Improvement in fabric.p4 and bng.p4

- fabric.p4 now supports double tagged hosts
- bng.p4 now only manages PPPoE termination
- bng_ingress moved at the end of the fabric pipeline

Change-Id: Iff62238fde9ec6ddf7311312a98c041e3ab3aa8d
diff --git a/pipelines/fabric/src/main/resources/p4c-out/fabric-int/bmv2/default/bmv2.json b/pipelines/fabric/src/main/resources/p4c-out/fabric-int/bmv2/default/bmv2.json
index 7daaa2c..f8bab98 100644
--- a/pipelines/fabric/src/main/resources/p4c-out/fabric-int/bmv2/default/bmv2.json
+++ b/pipelines/fabric/src/main/resources/p4c-out/fabric-int/bmv2/default/bmv2.json
@@ -10,31 +10,34 @@
         ["tmp_1", 32, false],
         ["egress_next_tmp", 1, false],
         ["process_int_main_process_int_transit_hasReturned", 1, false],
-        ["fabric_metadata_t._eth_type0", 16, false],
-        ["fabric_metadata_t._ip_eth_type1", 16, false],
-        ["fabric_metadata_t._vlan_id2", 12, false],
-        ["fabric_metadata_t._vlan_pri3", 3, false],
-        ["fabric_metadata_t._vlan_cfi4", 1, false],
-        ["fabric_metadata_t._mpls_label5", 20, false],
-        ["fabric_metadata_t._mpls_ttl6", 8, false],
-        ["fabric_metadata_t._skip_forwarding7", 1, false],
-        ["fabric_metadata_t._skip_next8", 1, false],
-        ["fabric_metadata_t._fwd_type9", 3, false],
-        ["fabric_metadata_t._next_id10", 32, false],
-        ["fabric_metadata_t._is_multicast11", 1, false],
-        ["fabric_metadata_t._is_controller_packet_out12", 1, false],
-        ["fabric_metadata_t._ip_proto13", 8, false],
-        ["fabric_metadata_t._l4_sport14", 16, false],
-        ["fabric_metadata_t._l4_dport15", 16, false],
-        ["fabric_metadata_t._int_meta_source16", 1, false],
-        ["fabric_metadata_t._int_meta_transit17", 1, false],
-        ["fabric_metadata_t._int_meta_sink18", 1, false],
-        ["fabric_metadata_t._int_meta_switch_id19", 32, false],
-        ["fabric_metadata_t._int_meta_new_words20", 8, false],
-        ["fabric_metadata_t._int_meta_new_bytes21", 16, false],
-        ["fabric_metadata_t._int_meta_ig_tstamp22", 32, false],
-        ["fabric_metadata_t._int_meta_eg_tstamp23", 32, false],
-        ["_padding_0", 6, false]
+        ["fabric_metadata_t._last_eth_type0", 16, false],
+        ["fabric_metadata_t._is_ipv41", 1, false],
+        ["fabric_metadata_t._is_ipv62", 1, false],
+        ["fabric_metadata_t._is_mpls3", 1, false],
+        ["fabric_metadata_t._ip_eth_type4", 16, false],
+        ["fabric_metadata_t._vlan_id5", 12, false],
+        ["fabric_metadata_t._vlan_pri6", 3, false],
+        ["fabric_metadata_t._vlan_cfi7", 1, false],
+        ["fabric_metadata_t._mpls_label8", 20, false],
+        ["fabric_metadata_t._mpls_ttl9", 8, false],
+        ["fabric_metadata_t._skip_forwarding10", 1, false],
+        ["fabric_metadata_t._skip_next11", 1, false],
+        ["fabric_metadata_t._fwd_type12", 3, false],
+        ["fabric_metadata_t._next_id13", 32, false],
+        ["fabric_metadata_t._is_multicast14", 1, false],
+        ["fabric_metadata_t._is_controller_packet_out15", 1, false],
+        ["fabric_metadata_t._ip_proto16", 8, false],
+        ["fabric_metadata_t._l4_sport17", 16, false],
+        ["fabric_metadata_t._l4_dport18", 16, false],
+        ["fabric_metadata_t._int_meta_source19", 1, false],
+        ["fabric_metadata_t._int_meta_transit20", 1, false],
+        ["fabric_metadata_t._int_meta_sink21", 1, false],
+        ["fabric_metadata_t._int_meta_switch_id22", 32, false],
+        ["fabric_metadata_t._int_meta_new_words23", 8, false],
+        ["fabric_metadata_t._int_meta_new_bytes24", 16, false],
+        ["fabric_metadata_t._int_meta_ig_tstamp25", 32, false],
+        ["fabric_metadata_t._int_meta_eg_tstamp26", 32, false],
+        ["_padding_0", 3, false]
       ]
     },
     {
@@ -533,7 +536,7 @@
               "parameters" : [
                 {
                   "type" : "field",
-                  "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+                  "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
                 },
                 {
                   "type" : "field",
@@ -546,7 +549,7 @@
               "parameters" : [
                 {
                   "type" : "field",
-                  "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+                  "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
                 },
                 {
                   "type" : "hexstr",
@@ -573,7 +576,7 @@
               "type" : "hexstr",
               "value" : "0x0800",
               "mask" : null,
-              "next_state" : "parse_ipv4"
+              "next_state" : "pre_parse_ipv4"
             },
             {
               "value" : "default",
@@ -607,7 +610,7 @@
               "type" : "hexstr",
               "value" : "0x0800",
               "mask" : null,
-              "next_state" : "parse_ipv4"
+              "next_state" : "pre_parse_ipv4"
             },
             {
               "type" : "hexstr",
@@ -622,6 +625,18 @@
               "next_state" : "parse_inner_vlan_tag"
             },
             {
+              "type" : "hexstr",
+              "value" : "0x88a8",
+              "mask" : null,
+              "next_state" : "parse_inner_vlan_tag"
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x9100",
+              "mask" : null,
+              "next_state" : "parse_inner_vlan_tag"
+            },
+            {
               "value" : "default",
               "mask" : null,
               "next_state" : null
@@ -653,7 +668,7 @@
               "type" : "hexstr",
               "value" : "0x0800",
               "mask" : null,
-              "next_state" : "parse_ipv4"
+              "next_state" : "pre_parse_ipv4"
             },
             {
               "type" : "hexstr",
@@ -691,7 +706,30 @@
               "parameters" : [
                 {
                   "type" : "field",
-                  "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+                  "value" : ["scalars", "fabric_metadata_t._is_mpls3"]
+                },
+                {
+                  "type" : "expression",
+                  "value" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "b2d",
+                      "left" : null,
+                      "right" : {
+                        "type" : "bool",
+                        "value" : true
+                      }
+                    }
+                  }
+                }
+              ],
+              "op" : "set"
+            },
+            {
+              "parameters" : [
+                {
+                  "type" : "field",
+                  "value" : ["scalars", "fabric_metadata_t._mpls_label8"]
                 },
                 {
                   "type" : "field",
@@ -704,7 +742,7 @@
               "parameters" : [
                 {
                   "type" : "field",
-                  "value" : ["scalars", "fabric_metadata_t._mpls_ttl6"]
+                  "value" : ["scalars", "fabric_metadata_t._mpls_ttl9"]
                 },
                 {
                   "type" : "field",
@@ -748,12 +786,49 @@
           ]
         },
         {
-          "name" : "parse_ipv4",
+          "name" : "pre_parse_ipv4",
           "id" : 6,
           "parser_ops" : [
             {
               "parameters" : [
                 {
+                  "type" : "field",
+                  "value" : ["scalars", "fabric_metadata_t._is_ipv41"]
+                },
+                {
+                  "type" : "expression",
+                  "value" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "b2d",
+                      "left" : null,
+                      "right" : {
+                        "type" : "bool",
+                        "value" : true
+                      }
+                    }
+                  }
+                }
+              ],
+              "op" : "set"
+            }
+          ],
+          "transitions" : [
+            {
+              "value" : "default",
+              "mask" : null,
+              "next_state" : "parse_ipv4"
+            }
+          ],
+          "transition_key" : []
+        },
+        {
+          "name" : "parse_ipv4",
+          "id" : 7,
+          "parser_ops" : [
+            {
+              "parameters" : [
+                {
                   "type" : "regular",
                   "value" : "ipv4"
                 }
@@ -764,7 +839,7 @@
               "parameters" : [
                 {
                   "type" : "field",
-                  "value" : ["scalars", "fabric_metadata_t._ip_proto13"]
+                  "value" : ["scalars", "fabric_metadata_t._ip_proto16"]
                 },
                 {
                   "type" : "field",
@@ -777,7 +852,7 @@
               "parameters" : [
                 {
                   "type" : "field",
-                  "value" : ["scalars", "fabric_metadata_t._ip_eth_type1"]
+                  "value" : ["scalars", "fabric_metadata_t._ip_eth_type4"]
                 },
                 {
                   "type" : "hexstr",
@@ -834,7 +909,7 @@
         },
         {
           "name" : "parse_tcp",
-          "id" : 7,
+          "id" : 8,
           "parser_ops" : [
             {
               "parameters" : [
@@ -849,7 +924,7 @@
               "parameters" : [
                 {
                   "type" : "field",
-                  "value" : ["scalars", "fabric_metadata_t._l4_sport14"]
+                  "value" : ["scalars", "fabric_metadata_t._l4_sport17"]
                 },
                 {
                   "type" : "field",
@@ -862,7 +937,7 @@
               "parameters" : [
                 {
                   "type" : "field",
-                  "value" : ["scalars", "fabric_metadata_t._l4_dport15"]
+                  "value" : ["scalars", "fabric_metadata_t._l4_dport18"]
                 },
                 {
                   "type" : "field",
@@ -883,7 +958,7 @@
         },
         {
           "name" : "parse_udp",
-          "id" : 8,
+          "id" : 9,
           "parser_ops" : [
             {
               "parameters" : [
@@ -898,7 +973,7 @@
               "parameters" : [
                 {
                   "type" : "field",
-                  "value" : ["scalars", "fabric_metadata_t._l4_sport14"]
+                  "value" : ["scalars", "fabric_metadata_t._l4_sport17"]
                 },
                 {
                   "type" : "field",
@@ -911,7 +986,7 @@
               "parameters" : [
                 {
                   "type" : "field",
-                  "value" : ["scalars", "fabric_metadata_t._l4_dport15"]
+                  "value" : ["scalars", "fabric_metadata_t._l4_dport18"]
                 },
                 {
                   "type" : "field",
@@ -937,7 +1012,7 @@
         },
         {
           "name" : "parse_icmp",
-          "id" : 9,
+          "id" : 10,
           "parser_ops" : [
             {
               "parameters" : [
@@ -960,7 +1035,7 @@
         },
         {
           "name" : "parse_int",
-          "id" : 10,
+          "id" : 11,
           "parser_ops" : [],
           "transitions" : [
             {
@@ -984,7 +1059,7 @@
         },
         {
           "name" : "parse_intl4_shim",
-          "id" : 11,
+          "id" : 12,
           "parser_ops" : [
             {
               "parameters" : [
@@ -1027,7 +1102,7 @@
         },
         {
           "name" : "parse_int_data",
-          "id" : 12,
+          "id" : 13,
           "parser_ops" : [],
           "transitions" : [
             {
@@ -1040,7 +1115,7 @@
         },
         {
           "name" : "parse_intl4_tail",
-          "id" : 13,
+          "id" : 14,
           "parser_ops" : [
             {
               "parameters" : [
@@ -1071,7 +1146,7 @@
       "id" : 0,
       "source_info" : {
         "filename" : "include/parser.p4",
-        "line" : 261,
+        "line" : 276,
         "column" : 8,
         "source_fragment" : "FabricDeparser"
       },
@@ -1111,7 +1186,7 @@
       "binding" : "FabricIngress.filtering.fwd_classifier",
       "source_info" : {
         "filename" : "include/control/filtering.p4",
-        "line" : 80,
+        "line" : 83,
         "column" : 50,
         "source_fragment" : "fwd_classifier_counter"
       }
@@ -1183,7 +1258,7 @@
       "binding" : "FabricIngress.next.xconnect",
       "source_info" : {
         "filename" : "include/control/next.p4",
-        "line" : 92,
+        "line" : 103,
         "column" : 50,
         "source_fragment" : "xconnect_counter"
       }
@@ -1195,7 +1270,7 @@
       "binding" : "FabricIngress.next.hashed",
       "source_info" : {
         "filename" : "include/control/next.p4",
-        "line" : 166,
+        "line" : 178,
         "column" : 50,
         "source_fragment" : "hashed_counter"
       }
@@ -1207,7 +1282,7 @@
       "binding" : "FabricIngress.next.multicast",
       "source_info" : {
         "filename" : "include/control/next.p4",
-        "line" : 210,
+        "line" : 222,
         "column" : 50,
         "source_fragment" : "multicast_counter"
       }
@@ -1255,7 +1330,7 @@
       "binding" : "FabricEgress.egress_next.egress_vlan",
       "source_info" : {
         "filename" : "include/control/next.p4",
-        "line" : 283,
+        "line" : 309,
         "column" : 50,
         "source_fragment" : "egress_vlan_counter"
       }
@@ -1446,7 +1521,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_source16"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_source19"]
             },
             {
               "type" : "expression",
@@ -1482,7 +1557,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._skip_forwarding7"]
+              "value" : ["scalars", "fabric_metadata_t._skip_forwarding10"]
             },
             {
               "type" : "expression",
@@ -1511,7 +1586,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._skip_next8"]
+              "value" : ["scalars", "fabric_metadata_t._skip_next11"]
             },
             {
               "type" : "expression",
@@ -1558,7 +1633,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+              "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
             },
             {
               "type" : "runtime_data",
@@ -1589,7 +1664,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._fwd_type9"]
+              "value" : ["scalars", "fabric_metadata_t._fwd_type12"]
             },
             {
               "type" : "runtime_data",
@@ -1598,7 +1673,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/filtering.p4",
-            "line" : 83,
+            "line" : 86,
             "column" : 33,
             "source_fragment" : "= fwd_type; ..."
           }
@@ -1620,7 +1695,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._next_id10"]
+              "value" : ["scalars", "fabric_metadata_t._next_id13"]
             },
             {
               "type" : "runtime_data",
@@ -1651,7 +1726,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+              "value" : ["scalars", "fabric_metadata_t._mpls_label8"]
             },
             {
               "type" : "hexstr",
@@ -1670,7 +1745,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._next_id10"]
+              "value" : ["scalars", "fabric_metadata_t._next_id13"]
             },
             {
               "type" : "runtime_data",
@@ -1701,7 +1776,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._next_id10"]
+              "value" : ["scalars", "fabric_metadata_t._next_id13"]
             },
             {
               "type" : "runtime_data",
@@ -1738,7 +1813,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._next_id10"]
+              "value" : ["scalars", "fabric_metadata_t._next_id13"]
             },
             {
               "type" : "runtime_data",
@@ -1783,7 +1858,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._skip_next8"]
+              "value" : ["scalars", "fabric_metadata_t._skip_next11"]
             },
             {
               "type" : "expression",
@@ -1865,7 +1940,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._skip_next8"]
+              "value" : ["scalars", "fabric_metadata_t._skip_next11"]
             },
             {
               "type" : "expression",
@@ -1912,7 +1987,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+              "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
             },
             {
               "type" : "runtime_data",
@@ -1956,6 +2031,25 @@
             "column" : 5,
             "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
           }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x8100"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/../define.p4",
+            "line" : 107,
+            "column" : 31,
+            "source_fragment" : "0x8100; ..."
+          }
         }
       ]
     },
@@ -1974,7 +2068,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._next_id10"]
+              "value" : ["scalars", "fabric_metadata_t._next_id13"]
             },
             {
               "type" : "runtime_data",
@@ -1983,7 +2077,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 100,
+            "line" : 112,
             "column" : 32,
             "source_fragment" : "= next_id; ..."
           }
@@ -2125,7 +2219,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+              "value" : ["scalars", "fabric_metadata_t._mpls_label8"]
             },
             {
               "type" : "runtime_data",
@@ -2222,7 +2316,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 213,
+            "line" : 225,
             "column" : 8,
             "source_fragment" : "standard_metadata.mcast_grp = group_id"
           }
@@ -2232,7 +2326,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._is_multicast11"]
+              "value" : ["scalars", "fabric_metadata_t._is_multicast14"]
             },
             {
               "type" : "expression",
@@ -2251,7 +2345,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 214,
+            "line" : 226,
             "column" : 37,
             "source_fragment" : "= true; ..."
           }
@@ -2302,7 +2396,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._is_controller_packet_out12"]
+              "value" : ["scalars", "fabric_metadata_t._is_controller_packet_out15"]
             },
             {
               "type" : "expression",
@@ -2348,26 +2442,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._eth_type0"]
-            },
-            {
-              "type" : "field",
-              "value" : ["vlan_tag", "eth_type"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/control/filtering.p4",
-            "line" : 105,
-            "column" : 37,
-            "source_fragment" : "= hdr.vlan_tag.eth_type; ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+              "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
             },
             {
               "type" : "field",
@@ -2376,7 +2451,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/filtering.p4",
-            "line" : 106,
+            "line" : 110,
             "column" : 36,
             "source_fragment" : "= hdr.vlan_tag.vlan_id; ..."
           }
@@ -2386,7 +2461,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._vlan_pri3"]
+              "value" : ["scalars", "fabric_metadata_t._vlan_pri6"]
             },
             {
               "type" : "field",
@@ -2395,7 +2470,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/filtering.p4",
-            "line" : 107,
+            "line" : 111,
             "column" : 37,
             "source_fragment" : "= hdr.vlan_tag.pri; ..."
           }
@@ -2405,7 +2480,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._vlan_cfi4"]
+              "value" : ["scalars", "fabric_metadata_t._vlan_cfi7"]
             },
             {
               "type" : "field",
@@ -2414,7 +2489,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/filtering.p4",
-            "line" : 108,
+            "line" : 112,
             "column" : 37,
             "source_fragment" : "= hdr.vlan_tag.cfi; ..."
           }
@@ -2431,7 +2506,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._mpls_ttl6"]
+              "value" : ["scalars", "fabric_metadata_t._mpls_ttl9"]
             },
             {
               "type" : "hexstr",
@@ -2440,7 +2515,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/filtering.p4",
-            "line" : 115,
+            "line" : 126,
             "column" : 37,
             "source_fragment" : "= DEFAULT_MPLS_TTL + 1; ..."
           }
@@ -2457,6 +2532,110 @@
           "parameters" : [
             {
               "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x8847"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/../define.p4",
+            "line" : 108,
+            "column" : 31,
+            "source_fragment" : "0x8847; ..."
+          }
+        }
+      ]
+    },
+    {
+      "name" : "act_3",
+      "id" : 33,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
+            },
+            {
+              "type" : "field",
+              "value" : ["inner_vlan_tag", "eth_type"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/filtering.p4",
+            "line" : 136,
+            "column" : 50,
+            "source_fragment" : "= hdr.inner_vlan_tag.eth_type; ..."
+          }
+        }
+      ]
+    },
+    {
+      "name" : "act_4",
+      "id" : 34,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
+            },
+            {
+              "type" : "field",
+              "value" : ["vlan_tag", "eth_type"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/filtering.p4",
+            "line" : 139,
+            "column" : 50,
+            "source_fragment" : "= hdr.vlan_tag.eth_type; ..."
+          }
+        }
+      ]
+    },
+    {
+      "name" : "act_5",
+      "id" : 35,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
+            },
+            {
+              "type" : "field",
+              "value" : ["ethernet", "eth_type"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/filtering.p4",
+            "line" : 141,
+            "column" : 46,
+            "source_fragment" : "= hdr.ethernet.eth_type; ..."
+          }
+        }
+      ]
+    },
+    {
+      "name" : "act_6",
+      "id" : 36,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
               "value" : ["scalars", "tmp"]
             },
             {
@@ -2506,8 +2685,8 @@
       ]
     },
     {
-      "name" : "act_3",
-      "id" : 33,
+      "name" : "act_7",
+      "id" : 37,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -2565,37 +2744,37 @@
     },
     {
       "name" : "nop",
-      "id" : 34,
-      "runtime_data" : [],
-      "primitives" : []
-    },
-    {
-      "name" : "nop",
-      "id" : 35,
-      "runtime_data" : [],
-      "primitives" : []
-    },
-    {
-      "name" : "nop",
-      "id" : 36,
-      "runtime_data" : [],
-      "primitives" : []
-    },
-    {
-      "name" : "NoAction",
-      "id" : 37,
-      "runtime_data" : [],
-      "primitives" : []
-    },
-    {
-      "name" : "NoAction",
       "id" : 38,
       "runtime_data" : [],
       "primitives" : []
     },
     {
-      "name" : "FabricEgress.process_int_main.process_int_source.int_source_dscp",
+      "name" : "nop",
       "id" : 39,
+      "runtime_data" : [],
+      "primitives" : []
+    },
+    {
+      "name" : "nop",
+      "id" : 40,
+      "runtime_data" : [],
+      "primitives" : []
+    },
+    {
+      "name" : "NoAction",
+      "id" : 41,
+      "runtime_data" : [],
+      "primitives" : []
+    },
+    {
+      "name" : "NoAction",
+      "id" : 42,
+      "runtime_data" : [],
+      "primitives" : []
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_source.int_source_dscp",
+      "id" : 43,
       "runtime_data" : [
         {
           "name" : "max_hop",
@@ -2954,7 +3133,7 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._l4_dport15"]
+              "value" : ["scalars", "fabric_metadata_t._l4_dport18"]
             }
           ],
           "source_info" : {
@@ -3090,7 +3269,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.init_metadata",
-      "id" : 40,
+      "id" : 44,
       "runtime_data" : [
         {
           "name" : "switch_id",
@@ -3103,7 +3282,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_transit17"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_transit20"]
             },
             {
               "type" : "expression",
@@ -3132,7 +3311,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id19"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id22"]
             },
             {
               "type" : "runtime_data",
@@ -3150,655 +3329,12 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0",
-      "id" : 41,
+      "id" : 45,
       "runtime_data" : [],
       "primitives" : []
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1",
-      "id" : 42,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_q_occupancy"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 60,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_occupancy", "q_id"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 62,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_occupancy", "q_occupancy"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "deq_qdepth"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 63,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
-                      },
-                      "right" : {
-                        "type" : "hexstr",
-                        "value" : "0x01"
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 97,
-            "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
-                      },
-                      "right" : {
-                        "type" : "hexstr",
-                        "value" : "0x0004"
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 98,
-            "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2",
-      "id" : 43,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_hop_latency"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 54,
-            "column" : 8,
-            "source_fragment" : "hdr.int_hop_latency.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_hop_latency", "hop_latency"]
-            },
-            {
-              "type" : "field",
-              "value" : ["standard_metadata", "deq_timedelta"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 55,
-            "column" : 8,
-            "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
-                      },
-                      "right" : {
-                        "type" : "hexstr",
-                        "value" : "0x01"
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 97,
-            "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
-                      },
-                      "right" : {
-                        "type" : "hexstr",
-                        "value" : "0x0004"
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 98,
-            "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3",
-      "id" : 44,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_q_occupancy"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 60,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_occupancy", "q_id"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 62,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_occupancy", "q_occupancy"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "deq_qdepth"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 63,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_hop_latency"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 54,
-            "column" : 8,
-            "source_fragment" : "hdr.int_hop_latency.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_hop_latency", "hop_latency"]
-            },
-            {
-              "type" : "field",
-              "value" : ["standard_metadata", "deq_timedelta"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 55,
-            "column" : 8,
-            "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
-                      },
-                      "right" : {
-                        "type" : "hexstr",
-                        "value" : "0x02"
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 103,
-            "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
-                      },
-                      "right" : {
-                        "type" : "hexstr",
-                        "value" : "0x0008"
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 104,
-            "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4",
-      "id" : 45,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_port_ids"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 47,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_port_ids", "ingress_port_id"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "ingress_port"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 48,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_port_ids", "egress_port_id"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "egress_port"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 49,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
-                      },
-                      "right" : {
-                        "type" : "hexstr",
-                        "value" : "0x01"
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 97,
-            "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
-                      },
-                      "right" : {
-                        "type" : "hexstr",
-                        "value" : "0x0004"
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 98,
-            "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5",
       "id" : 46,
       "runtime_data" : [],
       "primitives" : [
@@ -3869,90 +3405,11 @@
           }
         },
         {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_port_ids"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 47,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.setValid()"
-          }
-        },
-        {
           "op" : "assign",
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["int_port_ids", "ingress_port_id"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "ingress_port"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 48,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_port_ids", "egress_port_id"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "egress_port"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 49,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
             },
             {
               "type" : "expression",
@@ -3966,11 +3423,11 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
                       },
                       "right" : {
                         "type" : "hexstr",
-                        "value" : "0x02"
+                        "value" : "0x01"
                       }
                     }
                   },
@@ -3984,9 +3441,9 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
-            "line" : 103,
+            "line" : 97,
             "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
+            "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
           }
         },
         {
@@ -3994,7 +3451,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
             },
             {
               "type" : "expression",
@@ -4008,11 +3465,11 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
                       },
                       "right" : {
                         "type" : "hexstr",
-                        "value" : "0x0008"
+                        "value" : "0x0004"
                       }
                     }
                   },
@@ -4026,15 +3483,15 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
-            "line" : 104,
+            "line" : 98,
             "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
+            "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
           }
         }
       ]
     },
     {
-      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6",
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2",
       "id" : 47,
       "runtime_data" : [],
       "primitives" : [
@@ -4073,90 +3530,11 @@
           }
         },
         {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_port_ids"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 47,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.setValid()"
-          }
-        },
-        {
           "op" : "assign",
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["int_port_ids", "ingress_port_id"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "ingress_port"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 48,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_port_ids", "egress_port_id"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "egress_port"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 49,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
             },
             {
               "type" : "expression",
@@ -4170,11 +3548,11 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
                       },
                       "right" : {
                         "type" : "hexstr",
-                        "value" : "0x02"
+                        "value" : "0x01"
                       }
                     }
                   },
@@ -4188,9 +3566,9 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
-            "line" : 103,
+            "line" : 97,
             "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
+            "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
           }
         },
         {
@@ -4198,7 +3576,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
             },
             {
               "type" : "expression",
@@ -4212,11 +3590,11 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
                       },
                       "right" : {
                         "type" : "hexstr",
-                        "value" : "0x0008"
+                        "value" : "0x0004"
                       }
                     }
                   },
@@ -4230,15 +3608,15 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
-            "line" : 104,
+            "line" : 98,
             "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
+            "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
           }
         }
       ]
     },
     {
-      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7",
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3",
       "id" : 48,
       "runtime_data" : [],
       "primitives" : [
@@ -4343,6 +3721,97 @@
           }
         },
         {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x02"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 103,
+            "column" : 33,
+            "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x0008"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 104,
+            "column" : 33,
+            "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4",
+      "id" : 49,
+      "runtime_data" : [],
+      "primitives" : [
+        {
           "op" : "add_header",
           "parameters" : [
             {
@@ -4426,7 +3895,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
             },
             {
               "type" : "expression",
@@ -4440,132 +3909,7 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
-                      },
-                      "right" : {
-                        "type" : "hexstr",
-                        "value" : "0x03"
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 109,
-            "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
-                      },
-                      "right" : {
-                        "type" : "hexstr",
-                        "value" : "0x000c"
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 110,
-            "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8",
-      "id" : 49,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_switch_id"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 41,
-            "column" : 8,
-            "source_fragment" : "hdr.int_switch_id.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_switch_id", "switch_id"]
-            },
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id19"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 42,
-            "column" : 8,
-            "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
                       },
                       "right" : {
                         "type" : "hexstr",
@@ -4593,7 +3937,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
             },
             {
               "type" : "expression",
@@ -4607,7 +3951,7 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
                       },
                       "right" : {
                         "type" : "hexstr",
@@ -4633,7 +3977,7 @@
       ]
     },
     {
-      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9",
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5",
       "id" : 50,
       "runtime_data" : [],
       "primitives" : [
@@ -4708,14 +4052,14 @@
           "parameters" : [
             {
               "type" : "header",
-              "value" : "int_switch_id"
+              "value" : "int_port_ids"
             }
           ],
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
-            "line" : 41,
+            "line" : 47,
             "column" : 8,
-            "source_fragment" : "hdr.int_switch_id.setValid()"
+            "source_fragment" : "hdr.int_port_ids.setValid()"
           }
         },
         {
@@ -4723,18 +4067,31 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["int_switch_id", "switch_id"]
+              "value" : ["int_port_ids", "ingress_port_id"]
             },
             {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id19"]
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "ingress_port"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
             }
           ],
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
-            "line" : 42,
+            "line" : 48,
             "column" : 8,
-            "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
+            "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
           }
         },
         {
@@ -4742,7 +4099,39 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+              "value" : ["int_port_ids", "egress_port_id"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "egress_port"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 49,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
             },
             {
               "type" : "expression",
@@ -4756,7 +4145,7 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
                       },
                       "right" : {
                         "type" : "hexstr",
@@ -4784,7 +4173,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
             },
             {
               "type" : "expression",
@@ -4798,7 +4187,7 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
                       },
                       "right" : {
                         "type" : "hexstr",
@@ -4824,7 +4213,7 @@
       ]
     },
     {
-      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10",
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6",
       "id" : 51,
       "runtime_data" : [],
       "primitives" : [
@@ -4867,14 +4256,14 @@
           "parameters" : [
             {
               "type" : "header",
-              "value" : "int_switch_id"
+              "value" : "int_port_ids"
             }
           ],
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
-            "line" : 41,
+            "line" : 47,
             "column" : 8,
-            "source_fragment" : "hdr.int_switch_id.setValid()"
+            "source_fragment" : "hdr.int_port_ids.setValid()"
           }
         },
         {
@@ -4882,18 +4271,31 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["int_switch_id", "switch_id"]
+              "value" : ["int_port_ids", "ingress_port_id"]
             },
             {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id19"]
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "ingress_port"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
             }
           ],
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
-            "line" : 42,
+            "line" : 48,
             "column" : 8,
-            "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
+            "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
           }
         },
         {
@@ -4901,7 +4303,39 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+              "value" : ["int_port_ids", "egress_port_id"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "egress_port"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 49,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
             },
             {
               "type" : "expression",
@@ -4915,7 +4349,7 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
                       },
                       "right" : {
                         "type" : "hexstr",
@@ -4943,7 +4377,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
             },
             {
               "type" : "expression",
@@ -4957,7 +4391,7 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
                       },
                       "right" : {
                         "type" : "hexstr",
@@ -4983,7 +4417,7 @@
       ]
     },
     {
-      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11",
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7",
       "id" : 52,
       "runtime_data" : [],
       "primitives" : [
@@ -5092,131 +4526,6 @@
           "parameters" : [
             {
               "type" : "header",
-              "value" : "int_switch_id"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 41,
-            "column" : 8,
-            "source_fragment" : "hdr.int_switch_id.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_switch_id", "switch_id"]
-            },
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id19"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 42,
-            "column" : 8,
-            "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
-                      },
-                      "right" : {
-                        "type" : "hexstr",
-                        "value" : "0x03"
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 109,
-            "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
-                      },
-                      "right" : {
-                        "type" : "hexstr",
-                        "value" : "0x000c"
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 110,
-            "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12",
-      "id" : 53,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
               "value" : "int_port_ids"
             }
           ],
@@ -5292,6 +4601,97 @@
           }
         },
         {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x03"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 109,
+            "column" : 33,
+            "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x000c"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 110,
+            "column" : 33,
+            "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8",
+      "id" : 53,
+      "runtime_data" : [],
+      "primitives" : [
+        {
           "op" : "add_header",
           "parameters" : [
             {
@@ -5315,7 +4715,7 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id19"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id22"]
             }
           ],
           "source_info" : {
@@ -5330,7 +4730,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
             },
             {
               "type" : "expression",
@@ -5344,11 +4744,11 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
                       },
                       "right" : {
                         "type" : "hexstr",
-                        "value" : "0x02"
+                        "value" : "0x01"
                       }
                     }
                   },
@@ -5362,9 +4762,9 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
-            "line" : 103,
+            "line" : 97,
             "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
+            "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
           }
         },
         {
@@ -5372,7 +4772,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
             },
             {
               "type" : "expression",
@@ -5386,11 +4786,11 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
                       },
                       "right" : {
                         "type" : "hexstr",
-                        "value" : "0x0008"
+                        "value" : "0x0004"
                       }
                     }
                   },
@@ -5404,15 +4804,15 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
-            "line" : 104,
+            "line" : 98,
             "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
+            "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
           }
         }
       ]
     },
     {
-      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13",
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9",
       "id" : 54,
       "runtime_data" : [],
       "primitives" : [
@@ -5487,85 +4887,6 @@
           "parameters" : [
             {
               "type" : "header",
-              "value" : "int_port_ids"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 47,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_port_ids", "ingress_port_id"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "ingress_port"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 48,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_port_ids", "egress_port_id"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "egress_port"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 49,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
               "value" : "int_switch_id"
             }
           ],
@@ -5585,7 +4906,7 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id19"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id22"]
             }
           ],
           "source_info" : {
@@ -5600,7 +4921,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
             },
             {
               "type" : "expression",
@@ -5614,11 +4935,11 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
                       },
                       "right" : {
                         "type" : "hexstr",
-                        "value" : "0x03"
+                        "value" : "0x02"
                       }
                     }
                   },
@@ -5632,9 +4953,9 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
-            "line" : 109,
+            "line" : 103,
             "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+            "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
           }
         },
         {
@@ -5642,7 +4963,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
             },
             {
               "type" : "expression",
@@ -5656,11 +4977,11 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
                       },
                       "right" : {
                         "type" : "hexstr",
-                        "value" : "0x000c"
+                        "value" : "0x0008"
                       }
                     }
                   },
@@ -5674,15 +4995,15 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
-            "line" : 110,
+            "line" : 104,
             "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+            "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
           }
         }
       ]
     },
     {
-      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14",
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10",
       "id" : 55,
       "runtime_data" : [],
       "primitives" : [
@@ -5725,85 +5046,6 @@
           "parameters" : [
             {
               "type" : "header",
-              "value" : "int_port_ids"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 47,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_port_ids", "ingress_port_id"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "ingress_port"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 48,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_port_ids", "egress_port_id"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "egress_port"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 49,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
               "value" : "int_switch_id"
             }
           ],
@@ -5823,7 +5065,7 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id19"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id22"]
             }
           ],
           "source_info" : {
@@ -5838,7 +5080,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
             },
             {
               "type" : "expression",
@@ -5852,11 +5094,11 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
                       },
                       "right" : {
                         "type" : "hexstr",
-                        "value" : "0x03"
+                        "value" : "0x02"
                       }
                     }
                   },
@@ -5870,9 +5112,9 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
-            "line" : 109,
+            "line" : 103,
             "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+            "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
           }
         },
         {
@@ -5880,7 +5122,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
             },
             {
               "type" : "expression",
@@ -5894,11 +5136,11 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
                       },
                       "right" : {
                         "type" : "hexstr",
-                        "value" : "0x000c"
+                        "value" : "0x0008"
                       }
                     }
                   },
@@ -5912,15 +5154,15 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
-            "line" : 110,
+            "line" : 104,
             "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+            "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
           }
         }
       ]
     },
     {
-      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15",
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11",
       "id" : 56,
       "runtime_data" : [],
       "primitives" : [
@@ -6029,6 +5271,131 @@
           "parameters" : [
             {
               "type" : "header",
+              "value" : "int_switch_id"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 41,
+            "column" : 8,
+            "source_fragment" : "hdr.int_switch_id.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_switch_id", "switch_id"]
+            },
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id22"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 42,
+            "column" : 8,
+            "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x03"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 109,
+            "column" : 33,
+            "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x000c"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 110,
+            "column" : 33,
+            "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12",
+      "id" : 57,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
               "value" : "int_port_ids"
             }
           ],
@@ -6127,7 +5494,7 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id19"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id22"]
             }
           ],
           "source_info" : {
@@ -6142,7 +5509,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
             },
             {
               "type" : "expression",
@@ -6156,460 +5523,7 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
-                      },
-                      "right" : {
-                        "type" : "hexstr",
-                        "value" : "0x04"
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 115,
-            "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_words + 4; ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
-                      },
-                      "right" : {
-                        "type" : "hexstr",
-                        "value" : "0x0010"
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 116,
-            "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_bytes + 16; ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0",
-      "id" : 57,
-      "runtime_data" : [],
-      "primitives" : []
-    },
-    {
-      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1",
-      "id" : 58,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_egress_tx_util"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 88,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tx_util.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_egress_tx_util", "egress_port_tx_util"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00000000"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 90,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
-                      },
-                      "right" : {
-                        "type" : "hexstr",
-                        "value" : "0x01"
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 97,
-            "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
-                      },
-                      "right" : {
-                        "type" : "hexstr",
-                        "value" : "0x0004"
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 98,
-            "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2",
-      "id" : 59,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_q_congestion"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 80,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_congestion.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_congestion", "q_id"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 82,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_congestion", "q_congestion"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x000000"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 83,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
-                      },
-                      "right" : {
-                        "type" : "hexstr",
-                        "value" : "0x01"
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 97,
-            "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
-                      },
-                      "right" : {
-                        "type" : "hexstr",
-                        "value" : "0x0004"
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 98,
-            "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3",
-      "id" : 60,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_egress_tx_util"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 88,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tx_util.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_egress_tx_util", "egress_port_tx_util"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00000000"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 90,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_q_congestion"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 80,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_congestion.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_congestion", "q_id"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 82,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_congestion", "q_congestion"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x000000"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 83,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
                       },
                       "right" : {
                         "type" : "hexstr",
@@ -6637,7 +5551,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
             },
             {
               "type" : "expression",
@@ -6651,7 +5565,7 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
                       },
                       "right" : {
                         "type" : "hexstr",
@@ -6677,8 +5591,8 @@
       ]
     },
     {
-      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4",
-      "id" : 61,
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13",
+      "id" : 58,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -6686,14 +5600,14 @@
           "parameters" : [
             {
               "type" : "header",
-              "value" : "int_egress_tstamp"
+              "value" : "int_q_occupancy"
             }
           ],
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
-            "line" : 74,
+            "line" : 60,
             "column" : 8,
-            "source_fragment" : "hdr.int_egress_tstamp.setValid()"
+            "source_fragment" : "hdr.int_q_occupancy.setValid()"
           }
         },
         {
@@ -6701,7 +5615,26 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["int_egress_tstamp", "egress_tstamp"]
+              "value" : ["int_q_occupancy", "q_id"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 62,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_occupancy", "q_occupancy"]
             },
             {
               "type" : "expression",
@@ -6710,22 +5643,12 @@
                 "value" : {
                   "op" : "&",
                   "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["standard_metadata", "enq_timestamp"]
-                      },
-                      "right" : {
-                        "type" : "field",
-                        "value" : ["standard_metadata", "deq_timedelta"]
-                      }
-                    }
+                    "type" : "field",
+                    "value" : ["standard_metadata", "deq_qdepth"]
                   },
                   "right" : {
                     "type" : "hexstr",
-                    "value" : "0xffffffff"
+                    "value" : "0xffffff"
                   }
                 }
               }
@@ -6733,9 +5656,24 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
-            "line" : 75,
+            "line" : 63,
             "column" : 8,
-            "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
+            "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_port_ids"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 47,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.setValid()"
           }
         },
         {
@@ -6743,7 +5681,105 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+              "value" : ["int_port_ids", "ingress_port_id"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "ingress_port"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 48,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_port_ids", "egress_port_id"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "egress_port"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 49,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_switch_id"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 41,
+            "column" : 8,
+            "source_fragment" : "hdr.int_switch_id.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_switch_id", "switch_id"]
+            },
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id22"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 42,
+            "column" : 8,
+            "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
             },
             {
               "type" : "expression",
@@ -6757,11 +5793,11 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
                       },
                       "right" : {
                         "type" : "hexstr",
-                        "value" : "0x01"
+                        "value" : "0x03"
                       }
                     }
                   },
@@ -6775,9 +5811,9 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
-            "line" : 97,
+            "line" : 109,
             "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
+            "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
           }
         },
         {
@@ -6785,7 +5821,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
             },
             {
               "type" : "expression",
@@ -6799,11 +5835,11 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
                       },
                       "right" : {
                         "type" : "hexstr",
-                        "value" : "0x0004"
+                        "value" : "0x000c"
                       }
                     }
                   },
@@ -6817,15 +5853,563 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
-            "line" : 98,
+            "line" : 110,
             "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
+            "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
           }
         }
       ]
     },
     {
-      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5",
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14",
+      "id" : 59,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_hop_latency"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 54,
+            "column" : 8,
+            "source_fragment" : "hdr.int_hop_latency.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_hop_latency", "hop_latency"]
+            },
+            {
+              "type" : "field",
+              "value" : ["standard_metadata", "deq_timedelta"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 55,
+            "column" : 8,
+            "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_port_ids"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 47,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_port_ids", "ingress_port_id"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "ingress_port"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 48,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_port_ids", "egress_port_id"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "egress_port"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 49,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_switch_id"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 41,
+            "column" : 8,
+            "source_fragment" : "hdr.int_switch_id.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_switch_id", "switch_id"]
+            },
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id22"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 42,
+            "column" : 8,
+            "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x03"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 109,
+            "column" : 33,
+            "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x000c"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 110,
+            "column" : 33,
+            "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15",
+      "id" : 60,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_q_occupancy"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 60,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_occupancy.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_occupancy", "q_id"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 62,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_occupancy", "q_occupancy"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "deq_qdepth"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 63,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_hop_latency"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 54,
+            "column" : 8,
+            "source_fragment" : "hdr.int_hop_latency.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_hop_latency", "hop_latency"]
+            },
+            {
+              "type" : "field",
+              "value" : ["standard_metadata", "deq_timedelta"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 55,
+            "column" : 8,
+            "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_port_ids"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 47,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_port_ids", "ingress_port_id"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "ingress_port"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 48,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_port_ids", "egress_port_id"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "egress_port"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 49,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_switch_id"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 41,
+            "column" : 8,
+            "source_fragment" : "hdr.int_switch_id.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_switch_id", "switch_id"]
+            },
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id22"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 42,
+            "column" : 8,
+            "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x04"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 115,
+            "column" : 33,
+            "source_fragment" : "= fmeta.int_meta.new_words + 4; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x0010"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 116,
+            "column" : 33,
+            "source_fragment" : "= fmeta.int_meta.new_bytes + 16; ..."
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0",
+      "id" : 61,
+      "runtime_data" : [],
+      "primitives" : []
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1",
       "id" : 62,
       "runtime_data" : [],
       "primitives" : [
@@ -6864,26 +6448,11 @@
           }
         },
         {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_egress_tstamp"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 74,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tstamp.setValid()"
-          }
-        },
-        {
           "op" : "assign",
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["int_egress_tstamp", "egress_tstamp"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
             },
             {
               "type" : "expression",
@@ -6897,53 +6466,11 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["standard_metadata", "enq_timestamp"]
-                      },
-                      "right" : {
-                        "type" : "field",
-                        "value" : ["standard_metadata", "deq_timedelta"]
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffffffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 75,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
                       },
                       "right" : {
                         "type" : "hexstr",
-                        "value" : "0x02"
+                        "value" : "0x01"
                       }
                     }
                   },
@@ -6957,9 +6484,9 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
-            "line" : 103,
+            "line" : 97,
             "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
+            "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
           }
         },
         {
@@ -6967,7 +6494,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
             },
             {
               "type" : "expression",
@@ -6981,11 +6508,11 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
                       },
                       "right" : {
                         "type" : "hexstr",
-                        "value" : "0x0008"
+                        "value" : "0x0004"
                       }
                     }
                   },
@@ -6999,15 +6526,15 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
-            "line" : 104,
+            "line" : 98,
             "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
+            "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
           }
         }
       ]
     },
     {
-      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6",
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2",
       "id" : 63,
       "runtime_data" : [],
       "primitives" : [
@@ -7065,26 +6592,11 @@
           }
         },
         {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_egress_tstamp"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 74,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tstamp.setValid()"
-          }
-        },
-        {
           "op" : "assign",
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["int_egress_tstamp", "egress_tstamp"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
             },
             {
               "type" : "expression",
@@ -7098,53 +6610,11 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["standard_metadata", "enq_timestamp"]
-                      },
-                      "right" : {
-                        "type" : "field",
-                        "value" : ["standard_metadata", "deq_timedelta"]
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffffffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 75,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
                       },
                       "right" : {
                         "type" : "hexstr",
-                        "value" : "0x02"
+                        "value" : "0x01"
                       }
                     }
                   },
@@ -7158,9 +6628,9 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
-            "line" : 103,
+            "line" : 97,
             "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
+            "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
           }
         },
         {
@@ -7168,7 +6638,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
             },
             {
               "type" : "expression",
@@ -7182,11 +6652,11 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
                       },
                       "right" : {
                         "type" : "hexstr",
-                        "value" : "0x0008"
+                        "value" : "0x0004"
                       }
                     }
                   },
@@ -7200,15 +6670,15 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
-            "line" : 104,
+            "line" : 98,
             "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
+            "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
           }
         }
       ]
     },
     {
-      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7",
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3",
       "id" : 64,
       "runtime_data" : [],
       "primitives" : [
@@ -7300,6 +6770,97 @@
           }
         },
         {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x02"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 103,
+            "column" : 33,
+            "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x0008"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 104,
+            "column" : 33,
+            "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4",
+      "id" : 65,
+      "runtime_data" : [],
+      "primitives" : [
+        {
           "op" : "add_header",
           "parameters" : [
             {
@@ -7361,7 +6922,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
             },
             {
               "type" : "expression",
@@ -7375,132 +6936,7 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
-                      },
-                      "right" : {
-                        "type" : "hexstr",
-                        "value" : "0x03"
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 109,
-            "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
-                      },
-                      "right" : {
-                        "type" : "hexstr",
-                        "value" : "0x000c"
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 110,
-            "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8",
-      "id" : 65,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_ingress_tstamp"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 68,
-            "column" : 8,
-            "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_ingress_tstamp", "ingress_tstamp"]
-            },
-            {
-              "type" : "field",
-              "value" : ["standard_metadata", "enq_timestamp"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 69,
-            "column" : 8,
-            "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
                       },
                       "right" : {
                         "type" : "hexstr",
@@ -7528,7 +6964,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
             },
             {
               "type" : "expression",
@@ -7542,7 +6978,7 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
                       },
                       "right" : {
                         "type" : "hexstr",
@@ -7568,7 +7004,7 @@
       ]
     },
     {
-      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9",
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5",
       "id" : 66,
       "runtime_data" : [],
       "primitives" : [
@@ -7611,14 +7047,14 @@
           "parameters" : [
             {
               "type" : "header",
-              "value" : "int_ingress_tstamp"
+              "value" : "int_egress_tstamp"
             }
           ],
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
-            "line" : 68,
+            "line" : 74,
             "column" : 8,
-            "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
+            "source_fragment" : "hdr.int_egress_tstamp.setValid()"
           }
         },
         {
@@ -7626,26 +7062,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["int_ingress_tstamp", "ingress_tstamp"]
-            },
-            {
-              "type" : "field",
-              "value" : ["standard_metadata", "enq_timestamp"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 69,
-            "column" : 8,
-            "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+              "value" : ["int_egress_tstamp", "egress_tstamp"]
             },
             {
               "type" : "expression",
@@ -7659,7 +7076,49 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+                        "value" : ["standard_metadata", "enq_timestamp"]
+                      },
+                      "right" : {
+                        "type" : "field",
+                        "value" : ["standard_metadata", "deq_timedelta"]
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffffffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 75,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
                       },
                       "right" : {
                         "type" : "hexstr",
@@ -7687,7 +7146,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
             },
             {
               "type" : "expression",
@@ -7701,7 +7160,7 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
                       },
                       "right" : {
                         "type" : "hexstr",
@@ -7727,7 +7186,7 @@
       ]
     },
     {
-      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10",
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6",
       "id" : 67,
       "runtime_data" : [],
       "primitives" : [
@@ -7789,14 +7248,14 @@
           "parameters" : [
             {
               "type" : "header",
-              "value" : "int_ingress_tstamp"
+              "value" : "int_egress_tstamp"
             }
           ],
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
-            "line" : 68,
+            "line" : 74,
             "column" : 8,
-            "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
+            "source_fragment" : "hdr.int_egress_tstamp.setValid()"
           }
         },
         {
@@ -7804,26 +7263,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["int_ingress_tstamp", "ingress_tstamp"]
-            },
-            {
-              "type" : "field",
-              "value" : ["standard_metadata", "enq_timestamp"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 69,
-            "column" : 8,
-            "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+              "value" : ["int_egress_tstamp", "egress_tstamp"]
             },
             {
               "type" : "expression",
@@ -7837,7 +7277,49 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+                        "value" : ["standard_metadata", "enq_timestamp"]
+                      },
+                      "right" : {
+                        "type" : "field",
+                        "value" : ["standard_metadata", "deq_timedelta"]
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffffffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 75,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
                       },
                       "right" : {
                         "type" : "hexstr",
@@ -7865,7 +7347,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
             },
             {
               "type" : "expression",
@@ -7879,7 +7361,7 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
                       },
                       "right" : {
                         "type" : "hexstr",
@@ -7905,7 +7387,7 @@
       ]
     },
     {
-      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11",
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7",
       "id" : 68,
       "runtime_data" : [],
       "primitives" : [
@@ -8001,131 +7483,6 @@
           "parameters" : [
             {
               "type" : "header",
-              "value" : "int_ingress_tstamp"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 68,
-            "column" : 8,
-            "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_ingress_tstamp", "ingress_tstamp"]
-            },
-            {
-              "type" : "field",
-              "value" : ["standard_metadata", "enq_timestamp"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 69,
-            "column" : 8,
-            "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
-                      },
-                      "right" : {
-                        "type" : "hexstr",
-                        "value" : "0x03"
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 109,
-            "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
-                      },
-                      "right" : {
-                        "type" : "hexstr",
-                        "value" : "0x000c"
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 110,
-            "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12",
-      "id" : 69,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
               "value" : "int_egress_tstamp"
             }
           ],
@@ -8179,6 +7536,97 @@
           }
         },
         {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x03"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 109,
+            "column" : 33,
+            "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x000c"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 110,
+            "column" : 33,
+            "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8",
+      "id" : 69,
+      "runtime_data" : [],
+      "primitives" : [
+        {
           "op" : "add_header",
           "parameters" : [
             {
@@ -8217,7 +7665,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
             },
             {
               "type" : "expression",
@@ -8231,11 +7679,11 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
                       },
                       "right" : {
                         "type" : "hexstr",
-                        "value" : "0x02"
+                        "value" : "0x01"
                       }
                     }
                   },
@@ -8249,9 +7697,9 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
-            "line" : 103,
+            "line" : 97,
             "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
+            "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
           }
         },
         {
@@ -8259,7 +7707,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
             },
             {
               "type" : "expression",
@@ -8273,11 +7721,11 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
                       },
                       "right" : {
                         "type" : "hexstr",
-                        "value" : "0x0008"
+                        "value" : "0x0004"
                       }
                     }
                   },
@@ -8291,15 +7739,15 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
-            "line" : 104,
+            "line" : 98,
             "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
+            "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
           }
         }
       ]
     },
     {
-      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13",
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9",
       "id" : 70,
       "runtime_data" : [],
       "primitives" : [
@@ -8342,63 +7790,6 @@
           "parameters" : [
             {
               "type" : "header",
-              "value" : "int_egress_tstamp"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 74,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tstamp.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_egress_tstamp", "egress_tstamp"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["standard_metadata", "enq_timestamp"]
-                      },
-                      "right" : {
-                        "type" : "field",
-                        "value" : ["standard_metadata", "deq_timedelta"]
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffffffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 75,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
               "value" : "int_ingress_tstamp"
             }
           ],
@@ -8433,7 +7824,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
             },
             {
               "type" : "expression",
@@ -8447,11 +7838,11 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
                       },
                       "right" : {
                         "type" : "hexstr",
-                        "value" : "0x03"
+                        "value" : "0x02"
                       }
                     }
                   },
@@ -8465,9 +7856,9 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
-            "line" : 109,
+            "line" : 103,
             "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+            "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
           }
         },
         {
@@ -8475,7 +7866,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
             },
             {
               "type" : "expression",
@@ -8489,11 +7880,11 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
                       },
                       "right" : {
                         "type" : "hexstr",
-                        "value" : "0x000c"
+                        "value" : "0x0008"
                       }
                     }
                   },
@@ -8507,15 +7898,15 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
-            "line" : 110,
+            "line" : 104,
             "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+            "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
           }
         }
       ]
     },
     {
-      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14",
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10",
       "id" : 71,
       "runtime_data" : [],
       "primitives" : [
@@ -8577,63 +7968,6 @@
           "parameters" : [
             {
               "type" : "header",
-              "value" : "int_egress_tstamp"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 74,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tstamp.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_egress_tstamp", "egress_tstamp"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["standard_metadata", "enq_timestamp"]
-                      },
-                      "right" : {
-                        "type" : "field",
-                        "value" : ["standard_metadata", "deq_timedelta"]
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffffffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int/int_transit.p4",
-            "line" : 75,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
               "value" : "int_ingress_tstamp"
             }
           ],
@@ -8668,7 +8002,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
             },
             {
               "type" : "expression",
@@ -8682,11 +8016,11 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
                       },
                       "right" : {
                         "type" : "hexstr",
-                        "value" : "0x03"
+                        "value" : "0x02"
                       }
                     }
                   },
@@ -8700,9 +8034,9 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
-            "line" : 109,
+            "line" : 103,
             "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+            "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
           }
         },
         {
@@ -8710,7 +8044,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
             },
             {
               "type" : "expression",
@@ -8724,11 +8058,11 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
                       },
                       "right" : {
                         "type" : "hexstr",
-                        "value" : "0x000c"
+                        "value" : "0x0008"
                       }
                     }
                   },
@@ -8742,15 +8076,15 @@
           ],
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
-            "line" : 110,
+            "line" : 104,
             "column" : 33,
-            "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+            "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
           }
         }
       ]
     },
     {
-      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15",
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11",
       "id" : 72,
       "runtime_data" : [],
       "primitives" : [
@@ -8846,6 +8180,131 @@
           "parameters" : [
             {
               "type" : "header",
+              "value" : "int_ingress_tstamp"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 68,
+            "column" : 8,
+            "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_ingress_tstamp", "ingress_tstamp"]
+            },
+            {
+              "type" : "field",
+              "value" : ["standard_metadata", "enq_timestamp"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 69,
+            "column" : 8,
+            "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x03"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 109,
+            "column" : 33,
+            "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x000c"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 110,
+            "column" : 33,
+            "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12",
+      "id" : 73,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
               "value" : "int_egress_tstamp"
             }
           ],
@@ -8937,7 +8396,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
             },
             {
               "type" : "expression",
@@ -8951,7 +8410,727 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x02"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 103,
+            "column" : 33,
+            "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x0008"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 104,
+            "column" : 33,
+            "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13",
+      "id" : 74,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_egress_tx_util"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 88,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tx_util.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_egress_tx_util", "egress_port_tx_util"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00000000"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 90,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_egress_tstamp"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 74,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tstamp.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_egress_tstamp", "egress_tstamp"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["standard_metadata", "enq_timestamp"]
+                      },
+                      "right" : {
+                        "type" : "field",
+                        "value" : ["standard_metadata", "deq_timedelta"]
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffffffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 75,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_ingress_tstamp"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 68,
+            "column" : 8,
+            "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_ingress_tstamp", "ingress_tstamp"]
+            },
+            {
+              "type" : "field",
+              "value" : ["standard_metadata", "enq_timestamp"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 69,
+            "column" : 8,
+            "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x03"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 109,
+            "column" : 33,
+            "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x000c"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 110,
+            "column" : 33,
+            "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14",
+      "id" : 75,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_q_congestion"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 80,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_congestion.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_congestion", "q_id"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 82,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_congestion", "q_congestion"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x000000"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 83,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_egress_tstamp"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 74,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tstamp.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_egress_tstamp", "egress_tstamp"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["standard_metadata", "enq_timestamp"]
+                      },
+                      "right" : {
+                        "type" : "field",
+                        "value" : ["standard_metadata", "deq_timedelta"]
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffffffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 75,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_ingress_tstamp"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 68,
+            "column" : 8,
+            "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_ingress_tstamp", "ingress_tstamp"]
+            },
+            {
+              "type" : "field",
+              "value" : ["standard_metadata", "enq_timestamp"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 69,
+            "column" : 8,
+            "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x03"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 109,
+            "column" : 33,
+            "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x000c"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 110,
+            "column" : 33,
+            "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15",
+      "id" : 76,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_egress_tx_util"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 88,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tx_util.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_egress_tx_util", "egress_port_tx_util"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00000000"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 90,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_q_congestion"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 80,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_congestion.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_congestion", "q_id"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 82,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_congestion", "q_congestion"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x000000"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 83,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_egress_tstamp"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 74,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tstamp.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_egress_tstamp", "egress_tstamp"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["standard_metadata", "enq_timestamp"]
+                      },
+                      "right" : {
+                        "type" : "field",
+                        "value" : ["standard_metadata", "deq_timedelta"]
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffffffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 75,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_ingress_tstamp"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 68,
+            "column" : 8,
+            "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_ingress_tstamp", "ingress_tstamp"]
+            },
+            {
+              "type" : "field",
+              "value" : ["standard_metadata", "enq_timestamp"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 69,
+            "column" : 8,
+            "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
                       },
                       "right" : {
                         "type" : "hexstr",
@@ -8979,7 +9158,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+              "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
             },
             {
               "type" : "expression",
@@ -8993,7 +9172,7 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
                       },
                       "right" : {
                         "type" : "hexstr",
@@ -9020,7 +9199,7 @@
     },
     {
       "name" : "FabricEgress.egress_next.pop_mpls_if_present",
-      "id" : 73,
+      "id" : 77,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -9033,7 +9212,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 252,
+            "line" : 264,
             "column" : 8,
             "source_fragment" : "hdr.mpls.setInvalid()"
           }
@@ -9043,17 +9222,17 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+              "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
             },
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._ip_eth_type1"]
+              "value" : ["scalars", "fabric_metadata_t._ip_eth_type4"]
             }
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 254,
-            "column" : 33,
+            "line" : 266,
+            "column" : 38,
             "source_fragment" : "= fabric_metadata.ip_eth_type; ..."
           }
         }
@@ -9061,7 +9240,7 @@
     },
     {
       "name" : "FabricEgress.egress_next.set_mpls",
-      "id" : 74,
+      "id" : 78,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -9074,7 +9253,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 259,
+            "line" : 271,
             "column" : 8,
             "source_fragment" : "hdr.mpls.setValid()"
           }
@@ -9088,12 +9267,12 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+              "value" : ["scalars", "fabric_metadata_t._mpls_label8"]
             }
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 260,
+            "line" : 272,
             "column" : 8,
             "source_fragment" : "hdr.mpls.label = fabric_metadata.mpls_label; ..."
           }
@@ -9112,7 +9291,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 261,
+            "line" : 273,
             "column" : 8,
             "source_fragment" : "hdr.mpls.tc = 3w0"
           }
@@ -9131,7 +9310,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 262,
+            "line" : 274,
             "column" : 8,
             "source_fragment" : "hdr.mpls.bos = 1w1"
           }
@@ -9145,12 +9324,12 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._mpls_ttl6"]
+              "value" : ["scalars", "fabric_metadata_t._mpls_ttl9"]
             }
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 263,
+            "line" : 275,
             "column" : 8,
             "source_fragment" : "hdr.mpls.ttl = fabric_metadata.mpls_ttl; // Decrement after push. ..."
           }
@@ -9160,7 +9339,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+              "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
             },
             {
               "type" : "hexstr",
@@ -9178,7 +9357,7 @@
     },
     {
       "name" : "FabricEgress.egress_next.push_vlan",
-      "id" : 75,
+      "id" : 79,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -9191,7 +9370,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 271,
+            "line" : 283,
             "column" : 8,
             "source_fragment" : "hdr.vlan_tag.setValid()"
           }
@@ -9205,12 +9384,12 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._vlan_cfi4"]
+              "value" : ["scalars", "fabric_metadata_t._vlan_cfi7"]
             }
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 272,
+            "line" : 284,
             "column" : 8,
             "source_fragment" : "hdr.vlan_tag.cfi = fabric_metadata.vlan_cfi; ..."
           }
@@ -9224,12 +9403,12 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._vlan_pri3"]
+              "value" : ["scalars", "fabric_metadata_t._vlan_pri6"]
             }
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 273,
+            "line" : 285,
             "column" : 8,
             "source_fragment" : "hdr.vlan_tag.pri = fabric_metadata.vlan_pri; ..."
           }
@@ -9243,14 +9422,14 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+              "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
             }
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 274,
+            "line" : 286,
             "column" : 8,
-            "source_fragment" : "hdr.vlan_tag.eth_type = fabric_metadata.eth_type; ..."
+            "source_fragment" : "hdr.vlan_tag.eth_type = fabric_metadata.last_eth_type; ..."
           }
         },
         {
@@ -9262,12 +9441,12 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+              "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
             }
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 275,
+            "line" : 287,
             "column" : 8,
             "source_fragment" : "hdr.vlan_tag.vlan_id = fabric_metadata.vlan_id; ..."
           }
@@ -9295,7 +9474,7 @@
     },
     {
       "name" : "FabricEgress.egress_next.pop_vlan",
-      "id" : 76,
+      "id" : 80,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -9307,14 +9486,14 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._eth_type0"]
+              "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
             }
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 286,
+            "line" : 312,
             "column" : 8,
-            "source_fragment" : "hdr.ethernet.eth_type = fabric_metadata.eth_type; ..."
+            "source_fragment" : "hdr.ethernet.eth_type = fabric_metadata.last_eth_type; ..."
           }
         },
         {
@@ -9327,7 +9506,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 287,
+            "line" : 313,
             "column" : 8,
             "source_fragment" : "hdr.vlan_tag.setInvalid()"
           }
@@ -9335,8 +9514,8 @@
       ]
     },
     {
-      "name" : "act_4",
-      "id" : 77,
+      "name" : "act_8",
+      "id" : 81,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -9352,8 +9531,8 @@
       ]
     },
     {
-      "name" : "act_5",
-      "id" : 78,
+      "name" : "act_9",
+      "id" : 82,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -9403,8 +9582,8 @@
       ]
     },
     {
-      "name" : "act_6",
-      "id" : 79,
+      "name" : "act_10",
+      "id" : 83,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -9417,7 +9596,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 308,
+            "line" : 334,
             "column" : 12,
             "source_fragment" : "mark_to_drop(standard_metadata)"
           }
@@ -9425,8 +9604,8 @@
       ]
     },
     {
-      "name" : "act_7",
-      "id" : 80,
+      "name" : "act_11",
+      "id" : 84,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -9455,8 +9634,8 @@
       ]
     },
     {
-      "name" : "act_8",
-      "id" : 81,
+      "name" : "act_12",
+      "id" : 85,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -9485,8 +9664,8 @@
       ]
     },
     {
-      "name" : "act_9",
-      "id" : 82,
+      "name" : "act_13",
+      "id" : 86,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -9499,7 +9678,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 327,
+            "line" : 367,
             "column" : 35,
             "source_fragment" : "mark_to_drop(standard_metadata)"
           }
@@ -9507,8 +9686,8 @@
       ]
     },
     {
-      "name" : "act_10",
-      "id" : 83,
+      "name" : "act_14",
+      "id" : 87,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -9548,7 +9727,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 326,
+            "line" : 366,
             "column" : 12,
             "source_fragment" : "hdr.mpls.ttl = hdr.mpls.ttl - 1"
           }
@@ -9556,8 +9735,8 @@
       ]
     },
     {
-      "name" : "act_11",
-      "id" : 84,
+      "name" : "act_15",
+      "id" : 88,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -9570,7 +9749,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 331,
+            "line" : 371,
             "column" : 39,
             "source_fragment" : "mark_to_drop(standard_metadata)"
           }
@@ -9578,8 +9757,8 @@
       ]
     },
     {
-      "name" : "act_12",
-      "id" : 85,
+      "name" : "act_16",
+      "id" : 89,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -9619,7 +9798,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 330,
+            "line" : 370,
             "column" : 16,
             "source_fragment" : "hdr.ipv4.ttl = hdr.ipv4.ttl - 1"
           }
@@ -9627,8 +9806,8 @@
       ]
     },
     {
-      "name" : "act_13",
-      "id" : 86,
+      "name" : "act_17",
+      "id" : 90,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -9657,8 +9836,8 @@
       ]
     },
     {
-      "name" : "act_14",
-      "id" : 87,
+      "name" : "act_18",
+      "id" : 91,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -9693,8 +9872,8 @@
       ]
     },
     {
-      "name" : "act_15",
-      "id" : 88,
+      "name" : "act_19",
+      "id" : 92,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -9720,7 +9899,7 @@
                       },
                       "right" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
                       }
                     }
                   },
@@ -9742,8 +9921,8 @@
       ]
     },
     {
-      "name" : "act_16",
-      "id" : 89,
+      "name" : "act_20",
+      "id" : 93,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -9791,8 +9970,8 @@
       ]
     },
     {
-      "name" : "act_17",
-      "id" : 90,
+      "name" : "act_21",
+      "id" : 94,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -9818,7 +9997,7 @@
                       },
                       "right" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes21"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes24"]
                       }
                     }
                   },
@@ -9840,8 +10019,8 @@
       ]
     },
     {
-      "name" : "act_18",
-      "id" : 91,
+      "name" : "act_22",
+      "id" : 95,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -9867,7 +10046,7 @@
                       },
                       "right" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words20"]
+                        "value" : ["scalars", "fabric_metadata_t._int_meta_new_words23"]
                       }
                     }
                   },
@@ -9935,9 +10114,9 @@
           "id" : 1,
           "source_info" : {
             "filename" : "include/control/filtering.p4",
-            "line" : 105,
-            "column" : 37,
-            "source_fragment" : "= hdr.vlan_tag.eth_type; ..."
+            "line" : 110,
+            "column" : 36,
+            "source_fragment" : "= hdr.vlan_tag.vlan_id; ..."
           },
           "key" : [],
           "match_type" : "exact",
@@ -9964,7 +10143,7 @@
           "id" : 2,
           "source_info" : {
             "filename" : "include/control/filtering.p4",
-            "line" : 115,
+            "line" : 126,
             "column" : 37,
             "source_fragment" : "="
           },
@@ -9977,9 +10156,9 @@
           "direct_meters" : null,
           "action_ids" : [31],
           "actions" : ["act_1"],
-          "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+          "base_default_next" : "node_8",
           "next_tables" : {
-            "act_1" : "FabricIngress.filtering.ingress_port_vlan"
+            "act_1" : "node_8"
           },
           "default_entry" : {
             "action_id" : 31,
@@ -9989,11 +10168,127 @@
           }
         },
         {
-          "name" : "FabricIngress.filtering.ingress_port_vlan",
+          "name" : "tbl_act_2",
           "id" : 3,
           "source_info" : {
             "filename" : "include/control/filtering.p4",
-            "line" : 51,
+            "line" : 131,
+            "column" : 42,
+            "source_fragment" : "="
+          },
+          "key" : [],
+          "match_type" : "exact",
+          "type" : "simple",
+          "max_size" : 1024,
+          "with_counters" : false,
+          "support_timeout" : false,
+          "direct_meters" : null,
+          "action_ids" : [32],
+          "actions" : ["act_2"],
+          "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+          "next_tables" : {
+            "act_2" : "FabricIngress.filtering.ingress_port_vlan"
+          },
+          "default_entry" : {
+            "action_id" : 32,
+            "action_const" : true,
+            "action_data" : [],
+            "action_entry_const" : true
+          }
+        },
+        {
+          "name" : "tbl_act_3",
+          "id" : 4,
+          "source_info" : {
+            "filename" : "include/control/filtering.p4",
+            "line" : 136,
+            "column" : 50,
+            "source_fragment" : "="
+          },
+          "key" : [],
+          "match_type" : "exact",
+          "type" : "simple",
+          "max_size" : 1024,
+          "with_counters" : false,
+          "support_timeout" : false,
+          "direct_meters" : null,
+          "action_ids" : [33],
+          "actions" : ["act_3"],
+          "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+          "next_tables" : {
+            "act_3" : "FabricIngress.filtering.ingress_port_vlan"
+          },
+          "default_entry" : {
+            "action_id" : 33,
+            "action_const" : true,
+            "action_data" : [],
+            "action_entry_const" : true
+          }
+        },
+        {
+          "name" : "tbl_act_4",
+          "id" : 5,
+          "source_info" : {
+            "filename" : "include/control/filtering.p4",
+            "line" : 139,
+            "column" : 50,
+            "source_fragment" : "="
+          },
+          "key" : [],
+          "match_type" : "exact",
+          "type" : "simple",
+          "max_size" : 1024,
+          "with_counters" : false,
+          "support_timeout" : false,
+          "direct_meters" : null,
+          "action_ids" : [34],
+          "actions" : ["act_4"],
+          "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+          "next_tables" : {
+            "act_4" : "FabricIngress.filtering.ingress_port_vlan"
+          },
+          "default_entry" : {
+            "action_id" : 34,
+            "action_const" : true,
+            "action_data" : [],
+            "action_entry_const" : true
+          }
+        },
+        {
+          "name" : "tbl_act_5",
+          "id" : 6,
+          "source_info" : {
+            "filename" : "include/control/filtering.p4",
+            "line" : 141,
+            "column" : 46,
+            "source_fragment" : "="
+          },
+          "key" : [],
+          "match_type" : "exact",
+          "type" : "simple",
+          "max_size" : 1024,
+          "with_counters" : false,
+          "support_timeout" : false,
+          "direct_meters" : null,
+          "action_ids" : [35],
+          "actions" : ["act_5"],
+          "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
+          "next_tables" : {
+            "act_5" : "FabricIngress.filtering.ingress_port_vlan"
+          },
+          "default_entry" : {
+            "action_id" : 35,
+            "action_const" : true,
+            "action_data" : [],
+            "action_entry_const" : true
+          }
+        },
+        {
+          "name" : "FabricIngress.filtering.ingress_port_vlan",
+          "id" : 7,
+          "source_info" : {
+            "filename" : "include/control/filtering.p4",
+            "line" : 53,
             "column" : 10,
             "source_fragment" : "ingress_port_vlan"
           },
@@ -10015,6 +10310,12 @@
               "name" : "vlan_id",
               "target" : ["vlan_tag", "vlan_id"],
               "mask" : null
+            },
+            {
+              "match_type" : "ternary",
+              "name" : "inner_vlan_id",
+              "target" : ["inner_vlan_tag", "vlan_id"],
+              "mask" : null
             }
           ],
           "match_type" : "ternary",
@@ -10040,10 +10341,10 @@
         },
         {
           "name" : "FabricIngress.filtering.fwd_classifier",
-          "id" : 4,
+          "id" : 8,
           "source_info" : {
             "filename" : "include/control/filtering.p4",
-            "line" : 87,
+            "line" : 90,
             "column" : 10,
             "source_fragment" : "fwd_classifier"
           },
@@ -10062,8 +10363,20 @@
             },
             {
               "match_type" : "exact",
-              "name" : "eth_type",
-              "target" : ["scalars", "fabric_metadata_t._eth_type0"],
+              "name" : "is_ipv4",
+              "target" : ["scalars", "fabric_metadata_t._is_ipv41"],
+              "mask" : null
+            },
+            {
+              "match_type" : "exact",
+              "name" : "is_ipv6",
+              "target" : ["scalars", "fabric_metadata_t._is_ipv62"],
+              "mask" : null
+            },
+            {
+              "match_type" : "exact",
+              "name" : "is_mpls",
+              "target" : ["scalars", "fabric_metadata_t._is_mpls3"],
               "mask" : null
             }
           ],
@@ -10075,9 +10388,9 @@
           "direct_meters" : null,
           "action_ids" : [12],
           "actions" : ["FabricIngress.filtering.set_forwarding_type"],
-          "base_default_next" : "node_10",
+          "base_default_next" : "node_17",
           "next_tables" : {
-            "FabricIngress.filtering.set_forwarding_type" : "node_10"
+            "FabricIngress.filtering.set_forwarding_type" : "node_17"
           },
           "default_entry" : {
             "action_id" : 12,
@@ -10088,7 +10401,7 @@
         },
         {
           "name" : "FabricIngress.forwarding.bridging",
-          "id" : 5,
+          "id" : 9,
           "source_info" : {
             "filename" : "include/control/forwarding.p4",
             "line" : 46,
@@ -10099,7 +10412,7 @@
             {
               "match_type" : "exact",
               "name" : "vlan_id",
-              "target" : ["scalars", "fabric_metadata_t._vlan_id2"],
+              "target" : ["scalars", "fabric_metadata_t._vlan_id5"],
               "mask" : null
             },
             {
@@ -10131,7 +10444,7 @@
         },
         {
           "name" : "FabricIngress.forwarding.mpls",
-          "id" : 6,
+          "id" : 10,
           "source_info" : {
             "filename" : "include/control/forwarding.p4",
             "line" : 71,
@@ -10142,7 +10455,7 @@
             {
               "match_type" : "exact",
               "name" : "mpls_label",
-              "target" : ["scalars", "fabric_metadata_t._mpls_label5"],
+              "target" : ["scalars", "fabric_metadata_t._mpls_label8"],
               "mask" : null
             }
           ],
@@ -10168,7 +10481,7 @@
         },
         {
           "name" : "FabricIngress.forwarding.routing_v4",
-          "id" : 7,
+          "id" : 11,
           "source_info" : {
             "filename" : "include/control/forwarding.p4",
             "line" : 101,
@@ -10206,7 +10519,7 @@
         },
         {
           "name" : "FabricIngress.acl.acl",
-          "id" : 8,
+          "id" : 12,
           "source_info" : {
             "filename" : "include/control/acl.p4",
             "line" : 60,
@@ -10223,19 +10536,19 @@
             {
               "match_type" : "ternary",
               "name" : "ip_proto",
-              "target" : ["scalars", "fabric_metadata_t._ip_proto13"],
+              "target" : ["scalars", "fabric_metadata_t._ip_proto16"],
               "mask" : null
             },
             {
               "match_type" : "ternary",
               "name" : "l4_sport",
-              "target" : ["scalars", "fabric_metadata_t._l4_sport14"],
+              "target" : ["scalars", "fabric_metadata_t._l4_sport17"],
               "mask" : null
             },
             {
               "match_type" : "ternary",
               "name" : "l4_dport",
-              "target" : ["scalars", "fabric_metadata_t._l4_dport15"],
+              "target" : ["scalars", "fabric_metadata_t._l4_dport18"],
               "mask" : null
             },
             {
@@ -10259,7 +10572,7 @@
             {
               "match_type" : "ternary",
               "name" : "eth_type",
-              "target" : ["scalars", "fabric_metadata_t._eth_type0"],
+              "target" : ["scalars", "fabric_metadata_t._last_eth_type0"],
               "mask" : null
             },
             {
@@ -10295,13 +10608,13 @@
           "direct_meters" : null,
           "action_ids" : [17, 18, 19, 20, 21],
           "actions" : ["FabricIngress.acl.set_next_id_acl", "FabricIngress.acl.punt_to_cpu", "FabricIngress.acl.set_clone_session_id", "FabricIngress.acl.drop", "FabricIngress.acl.nop_acl"],
-          "base_default_next" : "node_18",
+          "base_default_next" : "node_25",
           "next_tables" : {
-            "FabricIngress.acl.set_next_id_acl" : "node_18",
-            "FabricIngress.acl.punt_to_cpu" : "node_18",
-            "FabricIngress.acl.set_clone_session_id" : "node_18",
-            "FabricIngress.acl.drop" : "node_18",
-            "FabricIngress.acl.nop_acl" : "node_18"
+            "FabricIngress.acl.set_next_id_acl" : "node_25",
+            "FabricIngress.acl.punt_to_cpu" : "node_25",
+            "FabricIngress.acl.set_clone_session_id" : "node_25",
+            "FabricIngress.acl.drop" : "node_25",
+            "FabricIngress.acl.nop_acl" : "node_25"
           },
           "default_entry" : {
             "action_id" : 21,
@@ -10312,10 +10625,10 @@
         },
         {
           "name" : "FabricIngress.next.xconnect",
-          "id" : 9,
+          "id" : 13,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 104,
+            "line" : 116,
             "column" : 10,
             "source_fragment" : "xconnect"
           },
@@ -10329,7 +10642,7 @@
             {
               "match_type" : "exact",
               "name" : "next_id",
-              "target" : ["scalars", "fabric_metadata_t._next_id10"],
+              "target" : ["scalars", "fabric_metadata_t._next_id13"],
               "mask" : null
             }
           ],
@@ -10356,10 +10669,10 @@
         },
         {
           "name" : "FabricIngress.next.hashed",
-          "id" : 10,
+          "id" : 14,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 184,
+            "line" : 196,
             "column" : 10,
             "source_fragment" : "hashed"
           },
@@ -10367,7 +10680,7 @@
             {
               "match_type" : "exact",
               "name" : "next_id",
-              "target" : ["scalars", "fabric_metadata_t._next_id10"],
+              "target" : ["scalars", "fabric_metadata_t._next_id13"],
               "mask" : null
             }
           ],
@@ -10390,10 +10703,10 @@
         },
         {
           "name" : "FabricIngress.next.multicast",
-          "id" : 11,
+          "id" : 15,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 218,
+            "line" : 230,
             "column" : 10,
             "source_fragment" : "multicast"
           },
@@ -10401,7 +10714,7 @@
             {
               "match_type" : "exact",
               "name" : "next_id",
-              "target" : ["scalars", "fabric_metadata_t._next_id10"],
+              "target" : ["scalars", "fabric_metadata_t._next_id13"],
               "mask" : null
             }
           ],
@@ -10427,10 +10740,10 @@
         },
         {
           "name" : "FabricIngress.next.next_vlan",
-          "id" : 12,
+          "id" : 16,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 74,
+            "line" : 82,
             "column" : 10,
             "source_fragment" : "next_vlan"
           },
@@ -10438,7 +10751,7 @@
             {
               "match_type" : "exact",
               "name" : "next_id",
-              "target" : ["scalars", "fabric_metadata_t._next_id10"],
+              "target" : ["scalars", "fabric_metadata_t._next_id13"],
               "mask" : null
             }
           ],
@@ -10450,10 +10763,10 @@
           "direct_meters" : null,
           "action_ids" : [22, 4],
           "actions" : ["FabricIngress.next.set_vlan", "nop"],
-          "base_default_next" : "node_23",
+          "base_default_next" : "node_30",
           "next_tables" : {
-            "FabricIngress.next.set_vlan" : "node_23",
-            "nop" : "node_23"
+            "FabricIngress.next.set_vlan" : "node_30",
+            "nop" : "node_30"
           },
           "default_entry" : {
             "action_id" : 4,
@@ -10463,8 +10776,8 @@
           }
         },
         {
-          "name" : "tbl_act_2",
-          "id" : 13,
+          "name" : "tbl_act_6",
+          "id" : 17,
           "source_info" : {
             "filename" : "include/control/port_counter.p4",
             "line" : 31,
@@ -10478,22 +10791,22 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [32],
-          "actions" : ["act_2"],
-          "base_default_next" : "node_25",
+          "action_ids" : [36],
+          "actions" : ["act_6"],
+          "base_default_next" : "node_32",
           "next_tables" : {
-            "act_2" : "node_25"
+            "act_6" : "node_32"
           },
           "default_entry" : {
-            "action_id" : 32,
+            "action_id" : 36,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
           }
         },
         {
-          "name" : "tbl_act_3",
-          "id" : 14,
+          "name" : "tbl_act_7",
+          "id" : 18,
           "source_info" : {
             "filename" : "include/control/port_counter.p4",
             "line" : 34,
@@ -10507,14 +10820,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [33],
-          "actions" : ["act_3"],
+          "action_ids" : [37],
+          "actions" : ["act_7"],
           "base_default_next" : "FabricIngress.process_set_source_sink.tb_set_source",
           "next_tables" : {
-            "act_3" : "FabricIngress.process_set_source_sink.tb_set_source"
+            "act_7" : "FabricIngress.process_set_source_sink.tb_set_source"
           },
           "default_entry" : {
-            "action_id" : 33,
+            "action_id" : 37,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -10522,7 +10835,7 @@
         },
         {
           "name" : "FabricIngress.process_set_source_sink.tb_set_source",
-          "id" : 15,
+          "id" : 19,
           "source_info" : {
             "filename" : "include/int/int_main.p4",
             "line" : 46,
@@ -10564,7 +10877,7 @@
           "id" : 0,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 165,
+            "line" : 177,
             "column" : 57,
             "source_fragment" : "hashed_selector"
           },
@@ -10582,15 +10895,15 @@
               },
               {
                 "type" : "field",
-                "value" : ["scalars", "fabric_metadata_t._ip_proto13"]
+                "value" : ["scalars", "fabric_metadata_t._ip_proto16"]
               },
               {
                 "type" : "field",
-                "value" : ["scalars", "fabric_metadata_t._l4_sport14"]
+                "value" : ["scalars", "fabric_metadata_t._l4_sport17"]
               },
               {
                 "type" : "field",
-                "value" : ["scalars", "fabric_metadata_t._l4_dport15"]
+                "value" : ["scalars", "fabric_metadata_t._l4_dport18"]
               }
             ]
           }
@@ -10625,7 +10938,7 @@
           "id" : 1,
           "source_info" : {
             "filename" : "include/control/filtering.p4",
-            "line" : 104,
+            "line" : 109,
             "column" : 12,
             "source_fragment" : "hdr.vlan_tag.isValid()"
           },
@@ -10648,7 +10961,7 @@
           "id" : 2,
           "source_info" : {
             "filename" : "include/control/filtering.p4",
-            "line" : 110,
+            "line" : 121,
             "column" : 12,
             "source_fragment" : "!hdr.mpls.isValid()"
           },
@@ -10671,14 +10984,83 @@
             }
           },
           "true_next" : "tbl_act_1",
-          "false_next" : "FabricIngress.filtering.ingress_port_vlan"
+          "false_next" : "node_8"
+        },
+        {
+          "name" : "node_8",
+          "id" : 3,
+          "source_info" : {
+            "filename" : "include/control/filtering.p4",
+            "line" : 130,
+            "column" : 12,
+            "source_fragment" : "hdr.mpls.isValid()"
+          },
+          "expression" : {
+            "type" : "expression",
+            "value" : {
+              "op" : "d2b",
+              "left" : null,
+              "right" : {
+                "type" : "field",
+                "value" : ["mpls", "$valid$"]
+              }
+            }
+          },
+          "true_next" : "tbl_act_2",
+          "false_next" : "node_10"
         },
         {
           "name" : "node_10",
-          "id" : 3,
+          "id" : 4,
+          "source_info" : {
+            "filename" : "include/control/filtering.p4",
+            "line" : 133,
+            "column" : 16,
+            "source_fragment" : "hdr.vlan_tag.isValid()"
+          },
+          "expression" : {
+            "type" : "expression",
+            "value" : {
+              "op" : "d2b",
+              "left" : null,
+              "right" : {
+                "type" : "field",
+                "value" : ["vlan_tag", "$valid$"]
+              }
+            }
+          },
+          "true_next" : "node_11",
+          "false_next" : "tbl_act_5"
+        },
+        {
+          "name" : "node_11",
+          "id" : 5,
+          "source_info" : {
+            "filename" : "include/control/filtering.p4",
+            "line" : 135,
+            "column" : 19,
+            "source_fragment" : "hdr.inner_vlan_tag.isValid()"
+          },
+          "expression" : {
+            "type" : "expression",
+            "value" : {
+              "op" : "d2b",
+              "left" : null,
+              "right" : {
+                "type" : "field",
+                "value" : ["inner_vlan_tag", "$valid$"]
+              }
+            }
+          },
+          "true_next" : "tbl_act_3",
+          "false_next" : "tbl_act_4"
+        },
+        {
+          "name" : "node_17",
+          "id" : 6,
           "source_info" : {
             "filename" : "fabric.p4",
-            "line" : 74,
+            "line" : 71,
             "column" : 12,
             "source_fragment" : "fabric_metadata.skip_forwarding == false"
           },
@@ -10693,7 +11075,7 @@
                   "left" : null,
                   "right" : {
                     "type" : "field",
-                    "value" : ["scalars", "fabric_metadata_t._skip_forwarding7"]
+                    "value" : ["scalars", "fabric_metadata_t._skip_forwarding10"]
                   }
                 }
               },
@@ -10703,12 +11085,12 @@
               }
             }
           },
-          "true_next" : "node_11",
+          "true_next" : "node_18",
           "false_next" : "FabricIngress.acl.acl"
         },
         {
-          "name" : "node_11",
-          "id" : 4,
+          "name" : "node_18",
+          "id" : 7,
           "source_info" : {
             "filename" : "include/control/forwarding.p4",
             "line" : 141,
@@ -10721,7 +11103,7 @@
               "op" : "==",
               "left" : {
                 "type" : "field",
-                "value" : ["scalars", "fabric_metadata_t._fwd_type9"]
+                "value" : ["scalars", "fabric_metadata_t._fwd_type12"]
               },
               "right" : {
                 "type" : "hexstr",
@@ -10730,11 +11112,11 @@
             }
           },
           "true_next" : "FabricIngress.forwarding.bridging",
-          "false_next" : "node_13"
+          "false_next" : "node_20"
         },
         {
-          "name" : "node_13",
-          "id" : 5,
+          "name" : "node_20",
+          "id" : 8,
           "source_info" : {
             "filename" : "include/control/forwarding.p4",
             "line" : 142,
@@ -10747,7 +11129,7 @@
               "op" : "==",
               "left" : {
                 "type" : "field",
-                "value" : ["scalars", "fabric_metadata_t._fwd_type9"]
+                "value" : ["scalars", "fabric_metadata_t._fwd_type12"]
               },
               "right" : {
                 "type" : "hexstr",
@@ -10756,11 +11138,11 @@
             }
           },
           "true_next" : "FabricIngress.forwarding.mpls",
-          "false_next" : "node_15"
+          "false_next" : "node_22"
         },
         {
-          "name" : "node_15",
-          "id" : 6,
+          "name" : "node_22",
+          "id" : 9,
           "source_info" : {
             "filename" : "include/control/forwarding.p4",
             "line" : 143,
@@ -10773,7 +11155,7 @@
               "op" : "==",
               "left" : {
                 "type" : "field",
-                "value" : ["scalars", "fabric_metadata_t._fwd_type9"]
+                "value" : ["scalars", "fabric_metadata_t._fwd_type12"]
               },
               "right" : {
                 "type" : "hexstr",
@@ -10785,11 +11167,11 @@
           "false_next" : "FabricIngress.acl.acl"
         },
         {
-          "name" : "node_18",
-          "id" : 7,
+          "name" : "node_25",
+          "id" : 10,
           "source_info" : {
             "filename" : "fabric.p4",
-            "line" : 78,
+            "line" : 75,
             "column" : 12,
             "source_fragment" : "fabric_metadata.skip_next == false"
           },
@@ -10804,7 +11186,7 @@
                   "left" : null,
                   "right" : {
                     "type" : "field",
-                    "value" : ["scalars", "fabric_metadata_t._skip_next8"]
+                    "value" : ["scalars", "fabric_metadata_t._skip_next11"]
                   }
                 }
               },
@@ -10818,8 +11200,8 @@
           "true_next" : "FabricIngress.next.xconnect"
         },
         {
-          "name" : "node_23",
-          "id" : 8,
+          "name" : "node_30",
+          "id" : 11,
           "source_info" : {
             "filename" : "include/control/port_counter.p4",
             "line" : 30,
@@ -10840,12 +11222,12 @@
               }
             }
           },
-          "true_next" : "tbl_act_2",
-          "false_next" : "node_25"
+          "true_next" : "tbl_act_6",
+          "false_next" : "node_32"
         },
         {
-          "name" : "node_25",
-          "id" : 9,
+          "name" : "node_32",
+          "id" : 12,
           "source_info" : {
             "filename" : "include/control/port_counter.p4",
             "line" : 33,
@@ -10866,7 +11248,7 @@
               }
             }
           },
-          "true_next" : "tbl_act_3",
+          "true_next" : "tbl_act_7",
           "false_next" : "FabricIngress.process_set_source_sink.tb_set_source"
         }
       ]
@@ -10876,15 +11258,15 @@
       "id" : 1,
       "source_info" : {
         "filename" : "fabric.p4",
-        "line" : 92,
+        "line" : 93,
         "column" : 8,
         "source_fragment" : "FabricEgress"
       },
-      "init_table" : "node_30",
+      "init_table" : "node_37",
       "tables" : [
         {
-          "name" : "tbl_act_4",
-          "id" : 16,
+          "name" : "tbl_act_8",
+          "id" : 20,
           "source_info" : {
             "filename" : "include/control/packetio.p4",
             "line" : 41,
@@ -10898,22 +11280,22 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [77],
-          "actions" : ["act_4"],
-          "base_default_next" : "node_32",
+          "action_ids" : [81],
+          "actions" : ["act_8"],
+          "base_default_next" : "node_39",
           "next_tables" : {
-            "act_4" : "node_32"
+            "act_8" : "node_39"
           },
           "default_entry" : {
-            "action_id" : 77,
+            "action_id" : 81,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
           }
         },
         {
-          "name" : "tbl_act_5",
-          "id" : 17,
+          "name" : "tbl_act_9",
+          "id" : 21,
           "source_info" : {
             "filename" : "include/control/packetio.p4",
             "line" : 44,
@@ -10927,25 +11309,25 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [78],
-          "actions" : ["act_5"],
-          "base_default_next" : "node_34",
+          "action_ids" : [82],
+          "actions" : ["act_9"],
+          "base_default_next" : "node_41",
           "next_tables" : {
-            "act_5" : "node_34"
+            "act_9" : "node_41"
           },
           "default_entry" : {
-            "action_id" : 78,
+            "action_id" : 82,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
           }
         },
         {
-          "name" : "tbl_act_6",
-          "id" : 18,
+          "name" : "tbl_act_10",
+          "id" : 22,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 308,
+            "line" : 334,
             "column" : 12,
             "source_fragment" : "mark_to_drop(standard_metadata)"
           },
@@ -10956,14 +11338,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [79],
-          "actions" : ["act_6"],
-          "base_default_next" : "node_36",
+          "action_ids" : [83],
+          "actions" : ["act_10"],
+          "base_default_next" : "node_43",
           "next_tables" : {
-            "act_6" : "node_36"
+            "act_10" : "node_43"
           },
           "default_entry" : {
-            "action_id" : 79,
+            "action_id" : 83,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -10971,10 +11353,10 @@
         },
         {
           "name" : "tbl_egress_next_pop_mpls_if_present",
-          "id" : 19,
+          "id" : 23,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 312,
+            "line" : 338,
             "column" : 36,
             "source_fragment" : "pop_mpls_if_present()"
           },
@@ -10985,14 +11367,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [73],
+          "action_ids" : [77],
           "actions" : ["FabricEgress.egress_next.pop_mpls_if_present"],
           "base_default_next" : "FabricEgress.egress_next.egress_vlan",
           "next_tables" : {
             "FabricEgress.egress_next.pop_mpls_if_present" : "FabricEgress.egress_next.egress_vlan"
           },
           "default_entry" : {
-            "action_id" : 73,
+            "action_id" : 77,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -11000,10 +11382,10 @@
         },
         {
           "name" : "tbl_egress_next_set_mpls",
-          "id" : 20,
+          "id" : 24,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 314,
+            "line" : 340,
             "column" : 12,
             "source_fragment" : "set_mpls()"
           },
@@ -11014,14 +11396,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [74],
+          "action_ids" : [78],
           "actions" : ["FabricEgress.egress_next.set_mpls"],
           "base_default_next" : "FabricEgress.egress_next.egress_vlan",
           "next_tables" : {
             "FabricEgress.egress_next.set_mpls" : "FabricEgress.egress_next.egress_vlan"
           },
           "default_entry" : {
-            "action_id" : 74,
+            "action_id" : 78,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -11029,10 +11411,10 @@
         },
         {
           "name" : "FabricEgress.egress_next.egress_vlan",
-          "id" : 21,
+          "id" : 25,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 291,
+            "line" : 317,
             "column" : 10,
             "source_fragment" : "egress_vlan"
           },
@@ -11040,7 +11422,7 @@
             {
               "match_type" : "exact",
               "name" : "vlan_id",
-              "target" : ["scalars", "fabric_metadata_t._vlan_id2"],
+              "target" : ["scalars", "fabric_metadata_t._vlan_id5"],
               "mask" : null
             },
             {
@@ -11056,23 +11438,23 @@
           "with_counters" : true,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [76, 36],
+          "action_ids" : [80, 40],
           "actions" : ["FabricEgress.egress_next.pop_vlan", "nop"],
           "base_default_next" : null,
           "next_tables" : {
-            "__HIT__" : "tbl_act_7",
-            "__MISS__" : "tbl_act_8"
+            "__HIT__" : "tbl_act_11",
+            "__MISS__" : "tbl_act_12"
           },
           "default_entry" : {
-            "action_id" : 36,
+            "action_id" : 40,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
           }
         },
         {
-          "name" : "tbl_act_7",
-          "id" : 22,
+          "name" : "tbl_act_11",
+          "id" : 26,
           "key" : [],
           "match_type" : "exact",
           "type" : "simple",
@@ -11080,22 +11462,22 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [80],
-          "actions" : ["act_7"],
-          "base_default_next" : "node_43",
+          "action_ids" : [84],
+          "actions" : ["act_11"],
+          "base_default_next" : "node_50",
           "next_tables" : {
-            "act_7" : "node_43"
+            "act_11" : "node_50"
           },
           "default_entry" : {
-            "action_id" : 80,
+            "action_id" : 84,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
           }
         },
         {
-          "name" : "tbl_act_8",
-          "id" : 23,
+          "name" : "tbl_act_12",
+          "id" : 27,
           "key" : [],
           "match_type" : "exact",
           "type" : "simple",
@@ -11103,14 +11485,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [81],
-          "actions" : ["act_8"],
-          "base_default_next" : "node_43",
+          "action_ids" : [85],
+          "actions" : ["act_12"],
+          "base_default_next" : "node_50",
           "next_tables" : {
-            "act_8" : "node_43"
+            "act_12" : "node_50"
           },
           "default_entry" : {
-            "action_id" : 81,
+            "action_id" : 85,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -11118,11 +11500,11 @@
         },
         {
           "name" : "tbl_egress_next_push_vlan",
-          "id" : 24,
+          "id" : 28,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 320,
-            "column" : 16,
+            "line" : 357,
+            "column" : 20,
             "source_fragment" : "push_vlan()"
           },
           "key" : [],
@@ -11132,25 +11514,25 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [75],
+          "action_ids" : [79],
           "actions" : ["FabricEgress.egress_next.push_vlan"],
-          "base_default_next" : "node_46",
+          "base_default_next" : "node_53",
           "next_tables" : {
-            "FabricEgress.egress_next.push_vlan" : "node_46"
+            "FabricEgress.egress_next.push_vlan" : "node_53"
           },
           "default_entry" : {
-            "action_id" : 75,
+            "action_id" : 79,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
           }
         },
         {
-          "name" : "tbl_act_9",
-          "id" : 25,
+          "name" : "tbl_act_13",
+          "id" : 29,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 326,
+            "line" : 366,
             "column" : 25,
             "source_fragment" : "="
           },
@@ -11161,25 +11543,25 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [83],
-          "actions" : ["act_10"],
-          "base_default_next" : "node_48",
+          "action_ids" : [87],
+          "actions" : ["act_14"],
+          "base_default_next" : "node_55",
           "next_tables" : {
-            "act_10" : "node_48"
+            "act_14" : "node_55"
           },
           "default_entry" : {
-            "action_id" : 83,
+            "action_id" : 87,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
           }
         },
         {
-          "name" : "tbl_act_10",
-          "id" : 26,
+          "name" : "tbl_act_14",
+          "id" : 30,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 327,
+            "line" : 367,
             "column" : 35,
             "source_fragment" : "mark_to_drop(standard_metadata)"
           },
@@ -11190,25 +11572,25 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [82],
-          "actions" : ["act_9"],
-          "base_default_next" : "node_54",
+          "action_ids" : [86],
+          "actions" : ["act_13"],
+          "base_default_next" : "node_61",
           "next_tables" : {
-            "act_9" : "node_54"
+            "act_13" : "node_61"
           },
           "default_entry" : {
-            "action_id" : 82,
+            "action_id" : 86,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
           }
         },
         {
-          "name" : "tbl_act_11",
-          "id" : 27,
+          "name" : "tbl_act_15",
+          "id" : 31,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 330,
+            "line" : 370,
             "column" : 29,
             "source_fragment" : "="
           },
@@ -11219,25 +11601,25 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [85],
-          "actions" : ["act_12"],
-          "base_default_next" : "node_52",
+          "action_ids" : [89],
+          "actions" : ["act_16"],
+          "base_default_next" : "node_59",
           "next_tables" : {
-            "act_12" : "node_52"
+            "act_16" : "node_59"
           },
           "default_entry" : {
-            "action_id" : 85,
+            "action_id" : 89,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
           }
         },
         {
-          "name" : "tbl_act_12",
-          "id" : 28,
+          "name" : "tbl_act_16",
+          "id" : 32,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 331,
+            "line" : 371,
             "column" : 39,
             "source_fragment" : "mark_to_drop(standard_metadata)"
           },
@@ -11248,14 +11630,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [84],
-          "actions" : ["act_11"],
-          "base_default_next" : "node_54",
+          "action_ids" : [88],
+          "actions" : ["act_15"],
+          "base_default_next" : "node_61",
           "next_tables" : {
-            "act_11" : "node_54"
+            "act_15" : "node_61"
           },
           "default_entry" : {
-            "action_id" : 84,
+            "action_id" : 88,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -11263,7 +11645,7 @@
         },
         {
           "name" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
-          "id" : 29,
+          "id" : 33,
           "source_info" : {
             "filename" : "include/int/int_source.p4",
             "line" : 66,
@@ -11286,13 +11668,13 @@
             {
               "match_type" : "ternary",
               "name" : "l4_sport",
-              "target" : ["scalars", "fabric_metadata_t._l4_sport14"],
+              "target" : ["scalars", "fabric_metadata_t._l4_sport17"],
               "mask" : null
             },
             {
               "match_type" : "ternary",
               "name" : "l4_dport",
-              "target" : ["scalars", "fabric_metadata_t._l4_dport15"],
+              "target" : ["scalars", "fabric_metadata_t._l4_dport18"],
               "mask" : null
             }
           ],
@@ -11302,23 +11684,23 @@
           "with_counters" : true,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [39, 34],
+          "action_ids" : [43, 38],
           "actions" : ["FabricEgress.process_int_main.process_int_source.int_source_dscp", "nop"],
-          "base_default_next" : "node_57",
+          "base_default_next" : "node_64",
           "next_tables" : {
-            "FabricEgress.process_int_main.process_int_source.int_source_dscp" : "node_57",
-            "nop" : "node_57"
+            "FabricEgress.process_int_main.process_int_source.int_source_dscp" : "node_64",
+            "nop" : "node_64"
           },
           "default_entry" : {
-            "action_id" : 34,
+            "action_id" : 38,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
           }
         },
         {
-          "name" : "tbl_act_13",
-          "id" : 30,
+          "name" : "tbl_act_17",
+          "id" : 34,
           "key" : [],
           "match_type" : "exact",
           "type" : "simple",
@@ -11326,14 +11708,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [86],
-          "actions" : ["act_13"],
+          "action_ids" : [90],
+          "actions" : ["act_17"],
           "base_default_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
           "next_tables" : {
-            "act_13" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert"
+            "act_17" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert"
           },
           "default_entry" : {
-            "action_id" : 86,
+            "action_id" : 90,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -11341,7 +11723,7 @@
         },
         {
           "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
-          "id" : 31,
+          "id" : 35,
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
             "line" : 315,
@@ -11362,23 +11744,23 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [40, 35],
+          "action_ids" : [44, 39],
           "actions" : ["FabricEgress.process_int_main.process_int_transit.init_metadata", "nop"],
-          "base_default_next" : "node_60",
+          "base_default_next" : "node_67",
           "next_tables" : {
-            "FabricEgress.process_int_main.process_int_transit.init_metadata" : "node_60",
-            "nop" : "node_60"
+            "FabricEgress.process_int_main.process_int_transit.init_metadata" : "node_67",
+            "nop" : "node_67"
           },
           "default_entry" : {
-            "action_id" : 35,
+            "action_id" : 39,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
           }
         },
         {
-          "name" : "tbl_act_14",
-          "id" : 32,
+          "name" : "tbl_act_18",
+          "id" : 36,
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
             "line" : 420,
@@ -11392,14 +11774,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [87],
-          "actions" : ["act_14"],
-          "base_default_next" : "node_62",
+          "action_ids" : [91],
+          "actions" : ["act_18"],
+          "base_default_next" : "node_69",
           "next_tables" : {
-            "act_14" : "node_62"
+            "act_18" : "node_69"
           },
           "default_entry" : {
-            "action_id" : 87,
+            "action_id" : 91,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -11407,7 +11789,7 @@
         },
         {
           "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003",
-          "id" : 33,
+          "id" : 37,
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
             "line" : 331,
@@ -11428,7 +11810,7 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 37],
+          "action_ids" : [45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 41],
           "actions" : ["FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15", "NoAction"],
           "base_default_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
           "next_tables" : {
@@ -11451,7 +11833,7 @@
             "NoAction" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407"
           },
           "default_entry" : {
-            "action_id" : 37,
+            "action_id" : 41,
             "action_const" : false,
             "action_data" : [],
             "action_entry_const" : false
@@ -11471,7 +11853,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 41,
+                "action_id" : 45,
                 "action_data" : []
               },
               "priority" : 1
@@ -11490,7 +11872,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 42,
+                "action_id" : 46,
                 "action_data" : []
               },
               "priority" : 2
@@ -11509,7 +11891,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 43,
+                "action_id" : 47,
                 "action_data" : []
               },
               "priority" : 3
@@ -11528,7 +11910,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 44,
+                "action_id" : 48,
                 "action_data" : []
               },
               "priority" : 4
@@ -11547,7 +11929,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 45,
+                "action_id" : 49,
                 "action_data" : []
               },
               "priority" : 5
@@ -11566,7 +11948,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 46,
+                "action_id" : 50,
                 "action_data" : []
               },
               "priority" : 6
@@ -11585,7 +11967,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 47,
+                "action_id" : 51,
                 "action_data" : []
               },
               "priority" : 7
@@ -11604,7 +11986,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 48,
+                "action_id" : 52,
                 "action_data" : []
               },
               "priority" : 8
@@ -11623,7 +12005,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 49,
+                "action_id" : 53,
                 "action_data" : []
               },
               "priority" : 9
@@ -11642,7 +12024,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 50,
+                "action_id" : 54,
                 "action_data" : []
               },
               "priority" : 10
@@ -11661,7 +12043,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 51,
+                "action_id" : 55,
                 "action_data" : []
               },
               "priority" : 11
@@ -11680,7 +12062,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 52,
+                "action_id" : 56,
                 "action_data" : []
               },
               "priority" : 12
@@ -11699,7 +12081,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 53,
+                "action_id" : 57,
                 "action_data" : []
               },
               "priority" : 13
@@ -11718,7 +12100,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 54,
+                "action_id" : 58,
                 "action_data" : []
               },
               "priority" : 14
@@ -11737,7 +12119,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 55,
+                "action_id" : 59,
                 "action_data" : []
               },
               "priority" : 15
@@ -11756,7 +12138,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 56,
+                "action_id" : 60,
                 "action_data" : []
               },
               "priority" : 16
@@ -11765,7 +12147,7 @@
         },
         {
           "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-          "id" : 34,
+          "id" : 38,
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
             "line" : 375,
@@ -11786,30 +12168,30 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 38],
+          "action_ids" : [61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 42],
           "actions" : ["FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15", "NoAction"],
-          "base_default_next" : "tbl_act_15",
+          "base_default_next" : "tbl_act_19",
           "next_tables" : {
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0" : "tbl_act_15",
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1" : "tbl_act_15",
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2" : "tbl_act_15",
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3" : "tbl_act_15",
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4" : "tbl_act_15",
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5" : "tbl_act_15",
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6" : "tbl_act_15",
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7" : "tbl_act_15",
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8" : "tbl_act_15",
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9" : "tbl_act_15",
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10" : "tbl_act_15",
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11" : "tbl_act_15",
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12" : "tbl_act_15",
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13" : "tbl_act_15",
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14" : "tbl_act_15",
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15" : "tbl_act_15",
-            "NoAction" : "tbl_act_15"
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0" : "tbl_act_19",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1" : "tbl_act_19",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2" : "tbl_act_19",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3" : "tbl_act_19",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4" : "tbl_act_19",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5" : "tbl_act_19",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6" : "tbl_act_19",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7" : "tbl_act_19",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8" : "tbl_act_19",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9" : "tbl_act_19",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10" : "tbl_act_19",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11" : "tbl_act_19",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12" : "tbl_act_19",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13" : "tbl_act_19",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14" : "tbl_act_19",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15" : "tbl_act_19",
+            "NoAction" : "tbl_act_19"
           },
           "default_entry" : {
-            "action_id" : 38,
+            "action_id" : 42,
             "action_const" : false,
             "action_data" : [],
             "action_entry_const" : false
@@ -11829,7 +12211,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 57,
+                "action_id" : 61,
                 "action_data" : []
               },
               "priority" : 1
@@ -11848,7 +12230,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 58,
+                "action_id" : 62,
                 "action_data" : []
               },
               "priority" : 2
@@ -11867,7 +12249,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 59,
+                "action_id" : 63,
                 "action_data" : []
               },
               "priority" : 3
@@ -11886,7 +12268,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 60,
+                "action_id" : 64,
                 "action_data" : []
               },
               "priority" : 4
@@ -11905,7 +12287,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 61,
+                "action_id" : 65,
                 "action_data" : []
               },
               "priority" : 5
@@ -11924,7 +12306,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 62,
+                "action_id" : 66,
                 "action_data" : []
               },
               "priority" : 6
@@ -11943,7 +12325,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 63,
+                "action_id" : 67,
                 "action_data" : []
               },
               "priority" : 7
@@ -11962,7 +12344,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 64,
+                "action_id" : 68,
                 "action_data" : []
               },
               "priority" : 8
@@ -11981,7 +12363,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 65,
+                "action_id" : 69,
                 "action_data" : []
               },
               "priority" : 9
@@ -12000,7 +12382,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 66,
+                "action_id" : 70,
                 "action_data" : []
               },
               "priority" : 10
@@ -12019,7 +12401,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 67,
+                "action_id" : 71,
                 "action_data" : []
               },
               "priority" : 11
@@ -12038,7 +12420,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 68,
+                "action_id" : 72,
                 "action_data" : []
               },
               "priority" : 12
@@ -12057,7 +12439,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 69,
+                "action_id" : 73,
                 "action_data" : []
               },
               "priority" : 13
@@ -12076,7 +12458,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 70,
+                "action_id" : 74,
                 "action_data" : []
               },
               "priority" : 14
@@ -12095,7 +12477,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 71,
+                "action_id" : 75,
                 "action_data" : []
               },
               "priority" : 15
@@ -12114,7 +12496,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 72,
+                "action_id" : 76,
                 "action_data" : []
               },
               "priority" : 16
@@ -12122,8 +12504,8 @@
           ]
         },
         {
-          "name" : "tbl_act_15",
-          "id" : 35,
+          "name" : "tbl_act_19",
+          "id" : 39,
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
             "line" : 425,
@@ -12137,22 +12519,22 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [89],
-          "actions" : ["act_16"],
-          "base_default_next" : "node_66",
+          "action_ids" : [93],
+          "actions" : ["act_20"],
+          "base_default_next" : "node_73",
           "next_tables" : {
-            "act_16" : "node_66"
+            "act_20" : "node_73"
           },
           "default_entry" : {
-            "action_id" : 89,
+            "action_id" : 93,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
           }
         },
         {
-          "name" : "tbl_act_16",
-          "id" : 36,
+          "name" : "tbl_act_20",
+          "id" : 40,
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
             "line" : 428,
@@ -12166,22 +12548,22 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [88],
-          "actions" : ["act_15"],
-          "base_default_next" : "node_68",
+          "action_ids" : [92],
+          "actions" : ["act_19"],
+          "base_default_next" : "node_75",
           "next_tables" : {
-            "act_15" : "node_68"
+            "act_19" : "node_75"
           },
           "default_entry" : {
-            "action_id" : 88,
+            "action_id" : 92,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
           }
         },
         {
-          "name" : "tbl_act_17",
-          "id" : 37,
+          "name" : "tbl_act_21",
+          "id" : 41,
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
             "line" : 431,
@@ -12195,22 +12577,22 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [90],
-          "actions" : ["act_17"],
-          "base_default_next" : "node_70",
+          "action_ids" : [94],
+          "actions" : ["act_21"],
+          "base_default_next" : "node_77",
           "next_tables" : {
-            "act_17" : "node_70"
+            "act_21" : "node_77"
           },
           "default_entry" : {
-            "action_id" : 90,
+            "action_id" : 94,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
           }
         },
         {
-          "name" : "tbl_act_18",
-          "id" : 38,
+          "name" : "tbl_act_22",
+          "id" : 42,
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
             "line" : 434,
@@ -12224,14 +12606,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [91],
-          "actions" : ["act_18"],
+          "action_ids" : [95],
+          "actions" : ["act_22"],
           "base_default_next" : null,
           "next_tables" : {
-            "act_18" : null
+            "act_22" : null
           },
           "default_entry" : {
-            "action_id" : 91,
+            "action_id" : 95,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -12241,8 +12623,8 @@
       "action_profiles" : [],
       "conditionals" : [
         {
-          "name" : "node_30",
-          "id" : 10,
+          "name" : "node_37",
+          "id" : 13,
           "source_info" : {
             "filename" : "include/control/packetio.p4",
             "line" : 39,
@@ -12260,7 +12642,7 @@
                   "left" : null,
                   "right" : {
                     "type" : "field",
-                    "value" : ["scalars", "fabric_metadata_t._is_controller_packet_out12"]
+                    "value" : ["scalars", "fabric_metadata_t._is_controller_packet_out15"]
                   }
                 }
               },
@@ -12270,12 +12652,12 @@
               }
             }
           },
-          "true_next" : "tbl_act_4",
-          "false_next" : "node_32"
+          "true_next" : "tbl_act_8",
+          "false_next" : "node_39"
         },
         {
-          "name" : "node_32",
-          "id" : 11,
+          "name" : "node_39",
+          "id" : 14,
           "source_info" : {
             "filename" : "include/control/packetio.p4",
             "line" : 43,
@@ -12296,15 +12678,15 @@
               }
             }
           },
-          "true_next" : "tbl_act_5",
-          "false_next" : "node_34"
+          "true_next" : "tbl_act_9",
+          "false_next" : "node_41"
         },
         {
-          "name" : "node_34",
-          "id" : 12,
+          "name" : "node_41",
+          "id" : 15,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 306,
+            "line" : 332,
             "column" : 12,
             "source_fragment" : "fabric_metadata.is_multicast == true ..."
           },
@@ -12323,7 +12705,7 @@
                       "left" : null,
                       "right" : {
                         "type" : "field",
-                        "value" : ["scalars", "fabric_metadata_t._is_multicast11"]
+                        "value" : ["scalars", "fabric_metadata_t._is_multicast14"]
                       }
                     }
                   },
@@ -12349,15 +12731,15 @@
               }
             }
           },
-          "true_next" : "tbl_act_6",
-          "false_next" : "node_36"
+          "true_next" : "tbl_act_10",
+          "false_next" : "node_43"
         },
         {
-          "name" : "node_36",
-          "id" : 13,
+          "name" : "node_43",
+          "id" : 16,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 311,
+            "line" : 337,
             "column" : 12,
             "source_fragment" : "fabric_metadata.mpls_label == 0"
           },
@@ -12367,7 +12749,7 @@
               "op" : "==",
               "left" : {
                 "type" : "field",
-                "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
+                "value" : ["scalars", "fabric_metadata_t._mpls_label8"]
               },
               "right" : {
                 "type" : "hexstr",
@@ -12375,15 +12757,15 @@
               }
             }
           },
-          "true_next" : "node_37",
+          "true_next" : "node_44",
           "false_next" : "tbl_egress_next_set_mpls"
         },
         {
-          "name" : "node_37",
-          "id" : 14,
+          "name" : "node_44",
+          "id" : 17,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 312,
+            "line" : 338,
             "column" : 16,
             "source_fragment" : "hdr.mpls.isValid()"
           },
@@ -12402,12 +12784,12 @@
           "false_next" : "FabricEgress.egress_next.egress_vlan"
         },
         {
-          "name" : "node_43",
-          "id" : 15,
+          "name" : "node_50",
+          "id" : 18,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 317,
-            "column" : 12,
+            "line" : 354,
+            "column" : 16,
             "source_fragment" : "!egress_vlan.apply().hit"
           },
           "expression" : {
@@ -12428,16 +12810,16 @@
               }
             }
           },
-          "true_next" : "node_44",
-          "false_next" : "node_46"
+          "true_next" : "node_51",
+          "false_next" : "node_53"
         },
         {
-          "name" : "node_44",
-          "id" : 16,
+          "name" : "node_51",
+          "id" : 19,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 319,
-            "column" : 16,
+            "line" : 356,
+            "column" : 20,
             "source_fragment" : "fabric_metadata.vlan_id != DEFAULT_VLAN_ID"
           },
           "expression" : {
@@ -12446,7 +12828,7 @@
               "op" : "!=",
               "left" : {
                 "type" : "field",
-                "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
+                "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
               },
               "right" : {
                 "type" : "hexstr",
@@ -12455,14 +12837,14 @@
             }
           },
           "true_next" : "tbl_egress_next_push_vlan",
-          "false_next" : "node_46"
+          "false_next" : "node_53"
         },
         {
-          "name" : "node_46",
-          "id" : 17,
+          "name" : "node_53",
+          "id" : 20,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 325,
+            "line" : 365,
             "column" : 12,
             "source_fragment" : "hdr.mpls.isValid()"
           },
@@ -12477,15 +12859,15 @@
               }
             }
           },
-          "true_next" : "tbl_act_9",
-          "false_next" : "node_50"
+          "true_next" : "tbl_act_13",
+          "false_next" : "node_57"
         },
         {
-          "name" : "node_48",
-          "id" : 18,
+          "name" : "node_55",
+          "id" : 21,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 327,
+            "line" : 367,
             "column" : 16,
             "source_fragment" : "hdr.mpls.ttl == 0"
           },
@@ -12503,15 +12885,15 @@
               }
             }
           },
-          "true_next" : "tbl_act_10",
-          "false_next" : "node_54"
+          "true_next" : "tbl_act_14",
+          "false_next" : "node_61"
         },
         {
-          "name" : "node_50",
-          "id" : 19,
+          "name" : "node_57",
+          "id" : 22,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 329,
+            "line" : 369,
             "column" : 15,
             "source_fragment" : "hdr.ipv4.isValid()"
           },
@@ -12526,15 +12908,15 @@
               }
             }
           },
-          "true_next" : "tbl_act_11",
-          "false_next" : "node_54"
+          "true_next" : "tbl_act_15",
+          "false_next" : "node_61"
         },
         {
-          "name" : "node_52",
-          "id" : 20,
+          "name" : "node_59",
+          "id" : 23,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 331,
+            "line" : 371,
             "column" : 20,
             "source_fragment" : "hdr.ipv4.ttl == 0"
           },
@@ -12552,12 +12934,12 @@
               }
             }
           },
-          "true_next" : "tbl_act_12",
-          "false_next" : "node_54"
+          "true_next" : "tbl_act_16",
+          "false_next" : "node_61"
         },
         {
-          "name" : "node_54",
-          "id" : 21,
+          "name" : "node_61",
+          "id" : 24,
           "source_info" : {
             "filename" : "include/int/int_main.p4",
             "line" : 102,
@@ -12633,11 +13015,11 @@
             }
           },
           "false_next" : null,
-          "true_next" : "node_55"
+          "true_next" : "node_62"
         },
         {
-          "name" : "node_55",
-          "id" : 22,
+          "name" : "node_62",
+          "id" : 25,
           "source_info" : {
             "filename" : "include/int/int_main.p4",
             "line" : 106,
@@ -12655,7 +13037,7 @@
                   "left" : null,
                   "right" : {
                     "type" : "field",
-                    "value" : ["scalars", "fabric_metadata_t._int_meta_source16"]
+                    "value" : ["scalars", "fabric_metadata_t._int_meta_source19"]
                   }
                 }
               },
@@ -12666,11 +13048,11 @@
             }
           },
           "true_next" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
-          "false_next" : "node_57"
+          "false_next" : "node_64"
         },
         {
-          "name" : "node_57",
-          "id" : 23,
+          "name" : "node_64",
+          "id" : 26,
           "source_info" : {
             "filename" : "include/int/int_main.p4",
             "line" : 110,
@@ -12689,11 +13071,11 @@
             }
           },
           "false_next" : null,
-          "true_next" : "tbl_act_13"
+          "true_next" : "tbl_act_17"
         },
         {
-          "name" : "node_60",
-          "id" : 24,
+          "name" : "node_67",
+          "id" : 27,
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
             "line" : 419,
@@ -12711,7 +13093,7 @@
                   "left" : null,
                   "right" : {
                     "type" : "field",
-                    "value" : ["scalars", "fabric_metadata_t._int_meta_transit17"]
+                    "value" : ["scalars", "fabric_metadata_t._int_meta_transit20"]
                   }
                 }
               },
@@ -12721,12 +13103,12 @@
               }
             }
           },
-          "true_next" : "tbl_act_14",
-          "false_next" : "node_62"
+          "true_next" : "tbl_act_18",
+          "false_next" : "node_69"
         },
         {
-          "name" : "node_62",
-          "id" : 25,
+          "name" : "node_69",
+          "id" : 28,
           "expression" : {
             "type" : "expression",
             "value" : {
@@ -12749,8 +13131,8 @@
           "true_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003"
         },
         {
-          "name" : "node_66",
-          "id" : 26,
+          "name" : "node_73",
+          "id" : 29,
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
             "line" : 427,
@@ -12768,12 +13150,12 @@
               }
             }
           },
-          "true_next" : "tbl_act_16",
-          "false_next" : "node_68"
+          "true_next" : "tbl_act_20",
+          "false_next" : "node_75"
         },
         {
-          "name" : "node_68",
-          "id" : 27,
+          "name" : "node_75",
+          "id" : 30,
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
             "line" : 430,
@@ -12791,12 +13173,12 @@
               }
             }
           },
-          "true_next" : "tbl_act_17",
-          "false_next" : "node_70"
+          "true_next" : "tbl_act_21",
+          "false_next" : "node_77"
         },
         {
-          "name" : "node_70",
-          "id" : 28,
+          "name" : "node_77",
+          "id" : 31,
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
             "line" : 433,
@@ -12815,7 +13197,7 @@
             }
           },
           "false_next" : null,
-          "true_next" : "tbl_act_18"
+          "true_next" : "tbl_act_22"
         }
       ]
     }