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

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

Change-Id: If6f8c73aad0effd01f18c87c147535378e8db84c
diff --git a/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-full/bmv2/default/bmv2.json b/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-full/bmv2/default/bmv2.json
index 2cca7f8..7ff2d8a 100644
--- a/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-full/bmv2/default/bmv2.json
+++ b/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-full/bmv2/default/bmv2.json
@@ -5,18 +5,17 @@
       "id" : 0,
       "fields" : [
         ["last_ipv4_dscp_0", 6, false],
+        ["tmp_0", 16, false],
         ["tmp_1", 16, false],
-        ["tmp_2", 16, false],
-        ["tmp_3", 4, false],
+        ["tmp_2", 4, false],
         ["tmp", 32, false],
-        ["tmp_0", 32, false],
+        ["tmp_3", 32, false],
         ["tmp_4", 32, false],
         ["bng_ingress_upstream_tmp", 1, false],
         ["bng_ingress_downstream_tmp", 1, false],
         ["spgw_tmp", 1, false],
         ["bng_ingress_upstream_hasReturned", 1, false],
         ["key_0", 64, false],
-        ["egress_next_tmp", 1, false],
         ["process_int_main_process_int_transit_hasReturned", 1, false],
         ["fabric_metadata_t._ip_eth_type0", 16, false],
         ["fabric_metadata_t._vlan_id1", 12, false],
@@ -68,7 +67,7 @@
         ["fabric_metadata_t._int_meta_new_bytes47", 16, false],
         ["fabric_metadata_t._int_meta_ig_tstamp48", 32, false],
         ["fabric_metadata_t._int_meta_eg_tstamp49", 32, false],
-        ["_padding_0", 2, false]
+        ["_padding_0", 3, false]
       ]
     },
     {
@@ -799,7 +798,7 @@
               "parameters" : [
                 {
                   "type" : "field",
-                  "value" : ["scalars", "tmp_1"]
+                  "value" : ["scalars", "tmp_0"]
                 },
                 {
                   "type" : "lookahead",
@@ -837,7 +836,7 @@
           "transition_key" : [
             {
               "type" : "field",
-              "value" : ["scalars", "tmp_1"]
+              "value" : ["scalars", "tmp_0"]
             }
           ]
         },
@@ -871,7 +870,7 @@
               "parameters" : [
                 {
                   "type" : "field",
-                  "value" : ["scalars", "tmp_2"]
+                  "value" : ["scalars", "tmp_1"]
                 },
                 {
                   "type" : "lookahead",
@@ -897,7 +896,7 @@
           "transition_key" : [
             {
               "type" : "field",
-              "value" : ["scalars", "tmp_2"]
+              "value" : ["scalars", "tmp_1"]
             }
           ]
         },
@@ -1084,7 +1083,7 @@
               "parameters" : [
                 {
                   "type" : "field",
-                  "value" : ["scalars", "tmp_3"]
+                  "value" : ["scalars", "tmp_2"]
                 },
                 {
                   "type" : "lookahead",
@@ -1116,7 +1115,7 @@
           "transition_key" : [
             {
               "type" : "field",
-              "value" : ["scalars", "tmp_3"]
+              "value" : ["scalars", "tmp_2"]
             }
           ]
         },
@@ -2057,7 +2056,7 @@
       "binding" : "FabricEgress.egress_next.egress_vlan",
       "source_info" : {
         "filename" : "include/control/next.p4",
-        "line" : 313,
+        "line" : 314,
         "column" : 50,
         "source_fragment" : "egress_vlan_counter"
       }
@@ -7162,7 +7161,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "tmp_0"]
+              "value" : ["scalars", "tmp_3"]
             },
             {
               "type" : "expression",
@@ -7198,7 +7197,7 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "tmp_0"]
+              "value" : ["scalars", "tmp_3"]
             }
           ],
           "source_info" : {
@@ -7749,7 +7748,7 @@
       "primitives" : []
     },
     {
-      "name" : "nop",
+      "name" : "NoAction",
       "id" : 96,
       "runtime_data" : [],
       "primitives" : []
@@ -7761,14 +7760,8 @@
       "primitives" : []
     },
     {
-      "name" : "NoAction",
-      "id" : 98,
-      "runtime_data" : [],
-      "primitives" : []
-    },
-    {
       "name" : "FabricEgress.bng_egress.downstream.encap_v4",
-      "id" : 99,
+      "id" : 98,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -7965,7 +7958,7 @@
     },
     {
       "name" : "FabricEgress.bng_egress.downstream.encap_v6",
-      "id" : 100,
+      "id" : 99,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -8162,7 +8155,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_source.int_source_dscp",
-      "id" : 101,
+      "id" : 100,
       "runtime_data" : [
         {
           "name" : "max_hop",
@@ -8657,7 +8650,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.init_metadata",
-      "id" : 102,
+      "id" : 101,
       "runtime_data" : [
         {
           "name" : "switch_id",
@@ -8717,13 +8710,13 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0",
-      "id" : 103,
+      "id" : 102,
       "runtime_data" : [],
       "primitives" : []
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1",
-      "id" : 104,
+      "id" : 103,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -8880,7 +8873,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2",
-      "id" : 105,
+      "id" : 104,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -9005,7 +8998,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3",
-      "id" : 106,
+      "id" : 105,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -9196,7 +9189,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4",
-      "id" : 107,
+      "id" : 106,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -9366,7 +9359,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5",
-      "id" : 108,
+      "id" : 107,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -9602,7 +9595,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6",
-      "id" : 109,
+      "id" : 108,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -9806,7 +9799,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7",
-      "id" : 110,
+      "id" : 109,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -10076,7 +10069,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8",
-      "id" : 111,
+      "id" : 110,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -10201,7 +10194,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9",
-      "id" : 112,
+      "id" : 111,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -10392,7 +10385,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10",
-      "id" : 113,
+      "id" : 112,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -10551,7 +10544,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11",
-      "id" : 114,
+      "id" : 113,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -10776,7 +10769,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12",
-      "id" : 115,
+      "id" : 114,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -10980,7 +10973,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13",
-      "id" : 116,
+      "id" : 115,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -11250,7 +11243,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14",
-      "id" : 117,
+      "id" : 116,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -11488,7 +11481,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15",
-      "id" : 118,
+      "id" : 117,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -11792,13 +11785,13 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0",
-      "id" : 119,
+      "id" : 118,
       "runtime_data" : [],
       "primitives" : []
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1",
-      "id" : 120,
+      "id" : 119,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -11923,7 +11916,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2",
-      "id" : 121,
+      "id" : 120,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -12067,7 +12060,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3",
-      "id" : 122,
+      "id" : 121,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -12245,7 +12238,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4",
-      "id" : 123,
+      "id" : 122,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -12393,7 +12386,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5",
-      "id" : 124,
+      "id" : 123,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -12575,7 +12568,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6",
-      "id" : 125,
+      "id" : 124,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -12776,7 +12769,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7",
-      "id" : 126,
+      "id" : 125,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -13011,7 +13004,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8",
-      "id" : 127,
+      "id" : 126,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -13136,7 +13129,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9",
-      "id" : 128,
+      "id" : 127,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -13295,7 +13288,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10",
-      "id" : 129,
+      "id" : 128,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -13473,7 +13466,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11",
-      "id" : 130,
+      "id" : 129,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -13685,7 +13678,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12",
-      "id" : 131,
+      "id" : 130,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -13867,7 +13860,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13",
-      "id" : 132,
+      "id" : 131,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -14083,7 +14076,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14",
-      "id" : 133,
+      "id" : 132,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -14318,7 +14311,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15",
-      "id" : 134,
+      "id" : 133,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -14587,7 +14580,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_report.do_report_encapsulation",
-      "id" : 135,
+      "id" : 134,
       "runtime_data" : [
         {
           "name" : "src_mac",
@@ -15249,7 +15242,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_sink.restore_header",
-      "id" : 136,
+      "id" : 135,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -15294,7 +15287,7 @@
     },
     {
       "name" : "FabricEgress.process_int_main.process_int_sink.int_sink",
-      "id" : 137,
+      "id" : 136,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -15625,7 +15618,7 @@
     },
     {
       "name" : "FabricEgress.egress_next.pop_mpls_if_present",
-      "id" : 138,
+      "id" : 137,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -15666,7 +15659,7 @@
     },
     {
       "name" : "FabricEgress.egress_next.set_mpls",
-      "id" : 139,
+      "id" : 138,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -15782,106 +15775,8 @@
       ]
     },
     {
-      "name" : "FabricEgress.egress_next.push_vlan",
-      "id" : 140,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "vlan_tag"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/control/next.p4",
-            "line" : 289,
-            "column" : 8,
-            "source_fragment" : "hdr.vlan_tag.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["vlan_tag", "cfi"]
-            },
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._vlan_cfi3"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/control/next.p4",
-            "line" : 290,
-            "column" : 8,
-            "source_fragment" : "hdr.vlan_tag.cfi = fabric_metadata.vlan_cfi; ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["vlan_tag", "pri"]
-            },
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._vlan_pri2"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/control/next.p4",
-            "line" : 291,
-            "column" : 8,
-            "source_fragment" : "hdr.vlan_tag.pri = fabric_metadata.vlan_pri; ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["vlan_tag", "eth_type"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x8100"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/control/../define.p4",
-            "line" : 115,
-            "column" : 31,
-            "source_fragment" : "0x8100; ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["vlan_tag", "vlan_id"]
-            },
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t._vlan_id1"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/control/next.p4",
-            "line" : 293,
-            "column" : 8,
-            "source_fragment" : "hdr.vlan_tag.vlan_id = fabric_metadata.vlan_id; ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.egress_next.push_vlan",
-      "id" : 141,
+      "name" : "FabricEgress.egress_next.push_outer_vlan",
+      "id" : 139,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -15979,7 +15874,7 @@
     },
     {
       "name" : "FabricEgress.egress_next.push_inner_vlan",
-      "id" : 142,
+      "id" : 140,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -16095,8 +15990,106 @@
       ]
     },
     {
+      "name" : "FabricEgress.egress_next.push_vlan",
+      "id" : 141,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "vlan_tag"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/next.p4",
+            "line" : 289,
+            "column" : 8,
+            "source_fragment" : "hdr.vlan_tag.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["vlan_tag", "cfi"]
+            },
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._vlan_cfi3"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/next.p4",
+            "line" : 290,
+            "column" : 8,
+            "source_fragment" : "hdr.vlan_tag.cfi = fabric_metadata.vlan_cfi; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["vlan_tag", "pri"]
+            },
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._vlan_pri2"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/next.p4",
+            "line" : 291,
+            "column" : 8,
+            "source_fragment" : "hdr.vlan_tag.pri = fabric_metadata.vlan_pri; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["vlan_tag", "eth_type"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x8100"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/../define.p4",
+            "line" : 115,
+            "column" : 31,
+            "source_fragment" : "0x8100; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["vlan_tag", "vlan_id"]
+            },
+            {
+              "type" : "field",
+              "value" : ["scalars", "fabric_metadata_t._vlan_id1"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/next.p4",
+            "line" : 293,
+            "column" : 8,
+            "source_fragment" : "hdr.vlan_tag.vlan_id = fabric_metadata.vlan_id; ..."
+          }
+        }
+      ]
+    },
+    {
       "name" : "FabricEgress.egress_next.pop_vlan",
-      "id" : 143,
+      "id" : 142,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -16109,7 +16102,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 316,
+            "line" : 322,
             "column" : 8,
             "source_fragment" : "hdr.vlan_tag.setInvalid()"
           }
@@ -16117,6 +16110,28 @@
       ]
     },
     {
+      "name" : "FabricEgress.egress_next.drop",
+      "id" : 143,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "mark_to_drop",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "standard_metadata"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/next.p4",
+            "line" : 327,
+            "column" : 8,
+            "source_fragment" : "mark_to_drop(standard_metadata)"
+          }
+        }
+      ]
+    },
+    {
       "name" : "FabricEgress.spgw.gtpu_encap",
       "id" : 144,
       "runtime_data" : [],
@@ -16791,7 +16806,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 337,
+            "line" : 349,
             "column" : 12,
             "source_fragment" : "mark_to_drop(standard_metadata)"
           }
@@ -16804,66 +16819,6 @@
       "runtime_data" : [],
       "primitives" : [
         {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "egress_next_tmp"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "b2d",
-                  "left" : null,
-                  "right" : {
-                    "type" : "bool",
-                    "value" : true
-                  }
-                }
-              }
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "name" : "act_27",
-      "id" : 149,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "egress_next_tmp"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "b2d",
-                  "left" : null,
-                  "right" : {
-                    "type" : "bool",
-                    "value" : false
-                  }
-                }
-              }
-            }
-          ]
-        }
-      ]
-    },
-    {
-      "name" : "act_28",
-      "id" : 150,
-      "runtime_data" : [],
-      "primitives" : [
-        {
           "op" : "remove_header",
           "parameters" : [
             {
@@ -16873,7 +16828,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 353,
+            "line" : 365,
             "column" : 12,
             "source_fragment" : "hdr.inner_vlan_tag.setInvalid()"
           }
@@ -16881,8 +16836,8 @@
       ]
     },
     {
-      "name" : "act_29",
-      "id" : 151,
+      "name" : "act_27",
+      "id" : 149,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -16895,7 +16850,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 370,
+            "line" : 376,
             "column" : 35,
             "source_fragment" : "mark_to_drop(standard_metadata)"
           }
@@ -16903,8 +16858,8 @@
       ]
     },
     {
-      "name" : "act_30",
-      "id" : 152,
+      "name" : "act_28",
+      "id" : 150,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -16944,7 +16899,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 369,
+            "line" : 375,
             "column" : 12,
             "source_fragment" : "hdr.mpls.ttl = hdr.mpls.ttl - 1"
           }
@@ -16952,8 +16907,8 @@
       ]
     },
     {
-      "name" : "act_31",
-      "id" : 153,
+      "name" : "act_29",
+      "id" : 151,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -16966,7 +16921,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 374,
+            "line" : 380,
             "column" : 39,
             "source_fragment" : "mark_to_drop(standard_metadata)"
           }
@@ -16974,8 +16929,8 @@
       ]
     },
     {
-      "name" : "act_32",
-      "id" : 154,
+      "name" : "act_30",
+      "id" : 152,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -17015,7 +16970,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 373,
+            "line" : 379,
             "column" : 16,
             "source_fragment" : "hdr.ipv4.ttl = hdr.ipv4.ttl - 1"
           }
@@ -17023,8 +16978,8 @@
       ]
     },
     {
-      "name" : "act_33",
-      "id" : 155,
+      "name" : "act_31",
+      "id" : 153,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -17037,7 +16992,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 379,
+            "line" : 385,
             "column" : 45,
             "source_fragment" : "mark_to_drop(standard_metadata)"
           }
@@ -17045,8 +17000,8 @@
       ]
     },
     {
-      "name" : "act_34",
-      "id" : 156,
+      "name" : "act_32",
+      "id" : 154,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -17086,7 +17041,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 378,
+            "line" : 384,
             "column" : 16,
             "source_fragment" : "hdr.ipv6.hop_limit = hdr.ipv6.hop_limit - 1"
           }
@@ -17094,8 +17049,8 @@
       ]
     },
     {
-      "name" : "act_35",
-      "id" : 157,
+      "name" : "act_33",
+      "id" : 155,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -17120,8 +17075,8 @@
       ]
     },
     {
-      "name" : "act_36",
-      "id" : 158,
+      "name" : "act_34",
+      "id" : 156,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -17150,8 +17105,8 @@
       ]
     },
     {
-      "name" : "act_37",
-      "id" : 159,
+      "name" : "act_35",
+      "id" : 157,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -17186,8 +17141,8 @@
       ]
     },
     {
-      "name" : "act_38",
-      "id" : 160,
+      "name" : "act_36",
+      "id" : 158,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -17235,8 +17190,8 @@
       ]
     },
     {
-      "name" : "act_39",
-      "id" : 161,
+      "name" : "act_37",
+      "id" : 159,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -17284,8 +17239,8 @@
       ]
     },
     {
-      "name" : "act_40",
-      "id" : 162,
+      "name" : "act_38",
+      "id" : 160,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -17333,8 +17288,8 @@
       ]
     },
     {
-      "name" : "act_41",
-      "id" : 163,
+      "name" : "act_39",
+      "id" : 161,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -20212,7 +20167,7 @@
           "id" : 53,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 337,
+            "line" : 349,
             "column" : 12,
             "source_fragment" : "mark_to_drop(standard_metadata)"
           },
@@ -20241,7 +20196,7 @@
           "id" : 54,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 341,
+            "line" : 353,
             "column" : 36,
             "source_fragment" : "pop_mpls_if_present()"
           },
@@ -20252,14 +20207,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [138],
+          "action_ids" : [137],
           "actions" : ["FabricEgress.egress_next.pop_mpls_if_present"],
           "base_default_next" : "node_91",
           "next_tables" : {
             "FabricEgress.egress_next.pop_mpls_if_present" : "node_91"
           },
           "default_entry" : {
-            "action_id" : 138,
+            "action_id" : 137,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -20270,7 +20225,7 @@
           "id" : 55,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 343,
+            "line" : 355,
             "column" : 12,
             "source_fragment" : "set_mpls()"
           },
@@ -20281,27 +20236,27 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [139],
+          "action_ids" : [138],
           "actions" : ["FabricEgress.egress_next.set_mpls"],
           "base_default_next" : "node_91",
           "next_tables" : {
             "FabricEgress.egress_next.set_mpls" : "node_91"
           },
           "default_entry" : {
-            "action_id" : 139,
+            "action_id" : 138,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
           }
         },
         {
-          "name" : "tbl_egress_next_push_vlan",
+          "name" : "tbl_egress_next_push_outer_vlan",
           "id" : 56,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 349,
+            "line" : 361,
             "column" : 12,
-            "source_fragment" : "push_vlan()"
+            "source_fragment" : "push_outer_vlan()"
           },
           "key" : [],
           "match_type" : "exact",
@@ -20310,14 +20265,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [140],
-          "actions" : ["FabricEgress.egress_next.push_vlan"],
+          "action_ids" : [139],
+          "actions" : ["FabricEgress.egress_next.push_outer_vlan"],
           "base_default_next" : "tbl_egress_next_push_inner_vlan",
           "next_tables" : {
-            "FabricEgress.egress_next.push_vlan" : "tbl_egress_next_push_inner_vlan"
+            "FabricEgress.egress_next.push_outer_vlan" : "tbl_egress_next_push_inner_vlan"
           },
           "default_entry" : {
-            "action_id" : 140,
+            "action_id" : 139,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -20328,7 +20283,7 @@
           "id" : 57,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 350,
+            "line" : 362,
             "column" : 12,
             "source_fragment" : "push_inner_vlan()"
           },
@@ -20339,14 +20294,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [142],
+          "action_ids" : [140],
           "actions" : ["FabricEgress.egress_next.push_inner_vlan"],
-          "base_default_next" : "node_101",
+          "base_default_next" : "node_96",
           "next_tables" : {
-            "FabricEgress.egress_next.push_inner_vlan" : "node_101"
+            "FabricEgress.egress_next.push_inner_vlan" : "node_96"
           },
           "default_entry" : {
-            "action_id" : 142,
+            "action_id" : 140,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -20357,7 +20312,7 @@
           "id" : 58,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 353,
+            "line" : 365,
             "column" : 12,
             "source_fragment" : "hdr.inner_vlan_tag.setInvalid()"
           },
@@ -20368,14 +20323,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [150],
-          "actions" : ["act_28"],
+          "action_ids" : [148],
+          "actions" : ["act_26"],
           "base_default_next" : "FabricEgress.egress_next.egress_vlan",
           "next_tables" : {
-            "act_28" : "FabricEgress.egress_next.egress_vlan"
+            "act_26" : "FabricEgress.egress_next.egress_vlan"
           },
           "default_entry" : {
-            "action_id" : 150,
+            "action_id" : 148,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -20386,7 +20341,7 @@
           "id" : 59,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 320,
+            "line" : 331,
             "column" : 10,
             "source_fragment" : "egress_vlan"
           },
@@ -20410,15 +20365,16 @@
           "with_counters" : true,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [143, 96],
-          "actions" : ["FabricEgress.egress_next.pop_vlan", "nop"],
-          "base_default_next" : null,
+          "action_ids" : [141, 142, 143],
+          "actions" : ["FabricEgress.egress_next.push_vlan", "FabricEgress.egress_next.pop_vlan", "FabricEgress.egress_next.drop"],
+          "base_default_next" : "node_96",
           "next_tables" : {
-            "__HIT__" : "tbl_act_27",
-            "__MISS__" : "tbl_act_28"
+            "FabricEgress.egress_next.push_vlan" : "node_96",
+            "FabricEgress.egress_next.pop_vlan" : "node_96",
+            "FabricEgress.egress_next.drop" : "node_96"
           },
           "default_entry" : {
-            "action_id" : 96,
+            "action_id" : 143,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -20427,6 +20383,12 @@
         {
           "name" : "tbl_act_27",
           "id" : 60,
+          "source_info" : {
+            "filename" : "include/control/next.p4",
+            "line" : 375,
+            "column" : 25,
+            "source_fragment" : "="
+          },
           "key" : [],
           "match_type" : "exact",
           "type" : "simple",
@@ -20434,14 +20396,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [148],
-          "actions" : ["act_26"],
+          "action_ids" : [150],
+          "actions" : ["act_28"],
           "base_default_next" : "node_98",
           "next_tables" : {
-            "act_26" : "node_98"
+            "act_28" : "node_98"
           },
           "default_entry" : {
-            "action_id" : 148,
+            "action_id" : 150,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -20450,6 +20412,12 @@
         {
           "name" : "tbl_act_28",
           "id" : 61,
+          "source_info" : {
+            "filename" : "include/control/next.p4",
+            "line" : 376,
+            "column" : 35,
+            "source_fragment" : "mark_to_drop(standard_metadata)"
+          },
           "key" : [],
           "match_type" : "exact",
           "type" : "simple",
@@ -20459,9 +20427,9 @@
           "direct_meters" : null,
           "action_ids" : [149],
           "actions" : ["act_27"],
-          "base_default_next" : "node_98",
+          "base_default_next" : "node_108",
           "next_tables" : {
-            "act_27" : "node_98"
+            "act_27" : "node_108"
           },
           "default_entry" : {
             "action_id" : 149,
@@ -20471,41 +20439,12 @@
           }
         },
         {
-          "name" : "tbl_egress_next_push_vlan_0",
+          "name" : "tbl_act_29",
           "id" : 62,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 360,
-            "column" : 20,
-            "source_fragment" : "push_vlan()"
-          },
-          "key" : [],
-          "match_type" : "exact",
-          "type" : "simple",
-          "max_size" : 1024,
-          "with_counters" : false,
-          "support_timeout" : false,
-          "direct_meters" : null,
-          "action_ids" : [141],
-          "actions" : ["FabricEgress.egress_next.push_vlan"],
-          "base_default_next" : "node_101",
-          "next_tables" : {
-            "FabricEgress.egress_next.push_vlan" : "node_101"
-          },
-          "default_entry" : {
-            "action_id" : 141,
-            "action_const" : true,
-            "action_data" : [],
-            "action_entry_const" : true
-          }
-        },
-        {
-          "name" : "tbl_act_29",
-          "id" : 63,
-          "source_info" : {
-            "filename" : "include/control/next.p4",
-            "line" : 369,
-            "column" : 25,
+            "line" : 379,
+            "column" : 29,
             "source_fragment" : "="
           },
           "key" : [],
@@ -20517,9 +20456,9 @@
           "direct_meters" : null,
           "action_ids" : [152],
           "actions" : ["act_30"],
-          "base_default_next" : "node_103",
+          "base_default_next" : "node_102",
           "next_tables" : {
-            "act_30" : "node_103"
+            "act_30" : "node_102"
           },
           "default_entry" : {
             "action_id" : 152,
@@ -20530,11 +20469,11 @@
         },
         {
           "name" : "tbl_act_30",
-          "id" : 64,
+          "id" : 63,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 370,
-            "column" : 35,
+            "line" : 380,
+            "column" : 39,
             "source_fragment" : "mark_to_drop(standard_metadata)"
           },
           "key" : [],
@@ -20546,9 +20485,9 @@
           "direct_meters" : null,
           "action_ids" : [151],
           "actions" : ["act_29"],
-          "base_default_next" : "node_113",
+          "base_default_next" : "node_108",
           "next_tables" : {
-            "act_29" : "node_113"
+            "act_29" : "node_108"
           },
           "default_entry" : {
             "action_id" : 151,
@@ -20559,11 +20498,11 @@
         },
         {
           "name" : "tbl_act_31",
-          "id" : 65,
+          "id" : 64,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 373,
-            "column" : 29,
+            "line" : 384,
+            "column" : 35,
             "source_fragment" : "="
           },
           "key" : [],
@@ -20575,9 +20514,9 @@
           "direct_meters" : null,
           "action_ids" : [154],
           "actions" : ["act_32"],
-          "base_default_next" : "node_107",
+          "base_default_next" : "node_106",
           "next_tables" : {
-            "act_32" : "node_107"
+            "act_32" : "node_106"
           },
           "default_entry" : {
             "action_id" : 154,
@@ -20588,11 +20527,11 @@
         },
         {
           "name" : "tbl_act_32",
-          "id" : 66,
+          "id" : 65,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 374,
-            "column" : 39,
+            "line" : 385,
+            "column" : 45,
             "source_fragment" : "mark_to_drop(standard_metadata)"
           },
           "key" : [],
@@ -20604,9 +20543,9 @@
           "direct_meters" : null,
           "action_ids" : [153],
           "actions" : ["act_31"],
-          "base_default_next" : "node_113",
+          "base_default_next" : "node_108",
           "next_tables" : {
-            "act_31" : "node_113"
+            "act_31" : "node_108"
           },
           "default_entry" : {
             "action_id" : 153,
@@ -20616,13 +20555,13 @@
           }
         },
         {
-          "name" : "tbl_act_33",
-          "id" : 67,
+          "name" : "tbl_spgw_gtpu_encap",
+          "id" : 66,
           "source_info" : {
-            "filename" : "include/control/next.p4",
-            "line" : 378,
-            "column" : 35,
-            "source_fragment" : "="
+            "filename" : "include/control/spgw.p4",
+            "line" : 330,
+            "column" : 16,
+            "source_fragment" : "gtpu_encap()"
           },
           "key" : [],
           "match_type" : "exact",
@@ -20631,27 +20570,27 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [156],
-          "actions" : ["act_34"],
+          "action_ids" : [144],
+          "actions" : ["FabricEgress.spgw.gtpu_encap"],
           "base_default_next" : "node_111",
           "next_tables" : {
-            "act_34" : "node_111"
+            "FabricEgress.spgw.gtpu_encap" : "node_111"
           },
           "default_entry" : {
-            "action_id" : 156,
+            "action_id" : 144,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
           }
         },
         {
-          "name" : "tbl_act_34",
-          "id" : 68,
+          "name" : "tbl_act_33",
+          "id" : 67,
           "source_info" : {
-            "filename" : "include/control/next.p4",
-            "line" : 379,
-            "column" : 45,
-            "source_fragment" : "mark_to_drop(standard_metadata)"
+            "filename" : "include/control/spgw.p4",
+            "line" : 333,
+            "column" : 16,
+            "source_fragment" : "pdr_counter.count(fabric_md.spgw.ctr_id)"
           },
           "key" : [],
           "match_type" : "exact",
@@ -20674,66 +20613,8 @@
           }
         },
         {
-          "name" : "tbl_spgw_gtpu_encap",
-          "id" : 69,
-          "source_info" : {
-            "filename" : "include/control/spgw.p4",
-            "line" : 330,
-            "column" : 16,
-            "source_fragment" : "gtpu_encap()"
-          },
-          "key" : [],
-          "match_type" : "exact",
-          "type" : "simple",
-          "max_size" : 1024,
-          "with_counters" : false,
-          "support_timeout" : false,
-          "direct_meters" : null,
-          "action_ids" : [144],
-          "actions" : ["FabricEgress.spgw.gtpu_encap"],
-          "base_default_next" : "node_116",
-          "next_tables" : {
-            "FabricEgress.spgw.gtpu_encap" : "node_116"
-          },
-          "default_entry" : {
-            "action_id" : 144,
-            "action_const" : true,
-            "action_data" : [],
-            "action_entry_const" : true
-          }
-        },
-        {
-          "name" : "tbl_act_35",
-          "id" : 70,
-          "source_info" : {
-            "filename" : "include/control/spgw.p4",
-            "line" : 333,
-            "column" : 16,
-            "source_fragment" : "pdr_counter.count(fabric_md.spgw.ctr_id)"
-          },
-          "key" : [],
-          "match_type" : "exact",
-          "type" : "simple",
-          "max_size" : 1024,
-          "with_counters" : false,
-          "support_timeout" : false,
-          "direct_meters" : null,
-          "action_ids" : [157],
-          "actions" : ["act_35"],
-          "base_default_next" : "node_118",
-          "next_tables" : {
-            "act_35" : "node_118"
-          },
-          "default_entry" : {
-            "action_id" : 157,
-            "action_const" : true,
-            "action_data" : [],
-            "action_entry_const" : true
-          }
-        },
-        {
           "name" : "tbl_bng_egress_downstream_encap_v4",
-          "id" : 71,
+          "id" : 68,
           "source_info" : {
             "filename" : "include/bng.p4",
             "line" : 297,
@@ -20747,14 +20628,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [99],
+          "action_ids" : [98],
           "actions" : ["FabricEgress.bng_egress.downstream.encap_v4"],
-          "base_default_next" : "node_123",
+          "base_default_next" : "node_118",
           "next_tables" : {
-            "FabricEgress.bng_egress.downstream.encap_v4" : "node_123"
+            "FabricEgress.bng_egress.downstream.encap_v4" : "node_118"
           },
           "default_entry" : {
-            "action_id" : 99,
+            "action_id" : 98,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -20762,7 +20643,7 @@
         },
         {
           "name" : "tbl_bng_egress_downstream_encap_v6",
-          "id" : 72,
+          "id" : 69,
           "source_info" : {
             "filename" : "include/bng.p4",
             "line" : 302,
@@ -20776,14 +20657,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [100],
+          "action_ids" : [99],
           "actions" : ["FabricEgress.bng_egress.downstream.encap_v6"],
-          "base_default_next" : "node_123",
+          "base_default_next" : "node_118",
           "next_tables" : {
-            "FabricEgress.bng_egress.downstream.encap_v6" : "node_123"
+            "FabricEgress.bng_egress.downstream.encap_v6" : "node_118"
           },
           "default_entry" : {
-            "action_id" : 100,
+            "action_id" : 99,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -20791,7 +20672,7 @@
         },
         {
           "name" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
-          "id" : 73,
+          "id" : 70,
           "source_info" : {
             "filename" : "include/int/int_source.p4",
             "line" : 66,
@@ -20830,12 +20711,12 @@
           "with_counters" : true,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [101, 93],
+          "action_ids" : [100, 93],
           "actions" : ["FabricEgress.process_int_main.process_int_source.int_source_dscp", "nop"],
-          "base_default_next" : "node_126",
+          "base_default_next" : "node_121",
           "next_tables" : {
-            "FabricEgress.process_int_main.process_int_source.int_source_dscp" : "node_126",
-            "nop" : "node_126"
+            "FabricEgress.process_int_main.process_int_source.int_source_dscp" : "node_121",
+            "nop" : "node_121"
           },
           "default_entry" : {
             "action_id" : 93,
@@ -20845,8 +20726,8 @@
           }
         },
         {
-          "name" : "tbl_act_36",
-          "id" : 74,
+          "name" : "tbl_act_34",
+          "id" : 71,
           "key" : [],
           "match_type" : "exact",
           "type" : "simple",
@@ -20854,14 +20735,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [158],
-          "actions" : ["act_36"],
+          "action_ids" : [156],
+          "actions" : ["act_34"],
           "base_default_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
           "next_tables" : {
-            "act_36" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert"
+            "act_34" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert"
           },
           "default_entry" : {
-            "action_id" : 158,
+            "action_id" : 156,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -20869,7 +20750,7 @@
         },
         {
           "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
-          "id" : 75,
+          "id" : 72,
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
             "line" : 315,
@@ -20890,12 +20771,12 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [102, 94],
+          "action_ids" : [101, 94],
           "actions" : ["FabricEgress.process_int_main.process_int_transit.init_metadata", "nop"],
-          "base_default_next" : "node_129",
+          "base_default_next" : "node_124",
           "next_tables" : {
-            "FabricEgress.process_int_main.process_int_transit.init_metadata" : "node_129",
-            "nop" : "node_129"
+            "FabricEgress.process_int_main.process_int_transit.init_metadata" : "node_124",
+            "nop" : "node_124"
           },
           "default_entry" : {
             "action_id" : 94,
@@ -20905,8 +20786,8 @@
           }
         },
         {
-          "name" : "tbl_act_37",
-          "id" : 76,
+          "name" : "tbl_act_35",
+          "id" : 73,
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
             "line" : 420,
@@ -20920,14 +20801,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [159],
-          "actions" : ["act_37"],
-          "base_default_next" : "node_131",
+          "action_ids" : [157],
+          "actions" : ["act_35"],
+          "base_default_next" : "node_126",
           "next_tables" : {
-            "act_37" : "node_131"
+            "act_35" : "node_126"
           },
           "default_entry" : {
-            "action_id" : 159,
+            "action_id" : 157,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -20935,7 +20816,7 @@
         },
         {
           "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003",
-          "id" : 77,
+          "id" : 74,
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
             "line" : 331,
@@ -20956,7 +20837,7 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 97],
+          "action_ids" : [102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 96],
           "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" : {
@@ -20979,7 +20860,7 @@
             "NoAction" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407"
           },
           "default_entry" : {
-            "action_id" : 97,
+            "action_id" : 96,
             "action_const" : false,
             "action_data" : [],
             "action_entry_const" : false
@@ -20999,7 +20880,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 103,
+                "action_id" : 102,
                 "action_data" : []
               },
               "priority" : 1
@@ -21018,7 +20899,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 104,
+                "action_id" : 103,
                 "action_data" : []
               },
               "priority" : 2
@@ -21037,7 +20918,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 105,
+                "action_id" : 104,
                 "action_data" : []
               },
               "priority" : 3
@@ -21056,7 +20937,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 106,
+                "action_id" : 105,
                 "action_data" : []
               },
               "priority" : 4
@@ -21075,7 +20956,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 107,
+                "action_id" : 106,
                 "action_data" : []
               },
               "priority" : 5
@@ -21094,7 +20975,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 108,
+                "action_id" : 107,
                 "action_data" : []
               },
               "priority" : 6
@@ -21113,7 +20994,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 109,
+                "action_id" : 108,
                 "action_data" : []
               },
               "priority" : 7
@@ -21132,7 +21013,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 110,
+                "action_id" : 109,
                 "action_data" : []
               },
               "priority" : 8
@@ -21151,7 +21032,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 111,
+                "action_id" : 110,
                 "action_data" : []
               },
               "priority" : 9
@@ -21170,7 +21051,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 112,
+                "action_id" : 111,
                 "action_data" : []
               },
               "priority" : 10
@@ -21189,7 +21070,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 113,
+                "action_id" : 112,
                 "action_data" : []
               },
               "priority" : 11
@@ -21208,7 +21089,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 114,
+                "action_id" : 113,
                 "action_data" : []
               },
               "priority" : 12
@@ -21227,7 +21108,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 115,
+                "action_id" : 114,
                 "action_data" : []
               },
               "priority" : 13
@@ -21246,7 +21127,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 116,
+                "action_id" : 115,
                 "action_data" : []
               },
               "priority" : 14
@@ -21265,7 +21146,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 117,
+                "action_id" : 116,
                 "action_data" : []
               },
               "priority" : 15
@@ -21284,7 +21165,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 118,
+                "action_id" : 117,
                 "action_data" : []
               },
               "priority" : 16
@@ -21293,7 +21174,7 @@
         },
         {
           "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
-          "id" : 78,
+          "id" : 75,
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
             "line" : 375,
@@ -21314,30 +21195,30 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 98],
+          "action_ids" : [118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 97],
           "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_38",
+          "base_default_next" : "tbl_act_36",
           "next_tables" : {
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0" : "tbl_act_38",
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1" : "tbl_act_38",
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2" : "tbl_act_38",
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3" : "tbl_act_38",
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4" : "tbl_act_38",
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5" : "tbl_act_38",
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6" : "tbl_act_38",
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7" : "tbl_act_38",
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8" : "tbl_act_38",
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9" : "tbl_act_38",
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10" : "tbl_act_38",
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11" : "tbl_act_38",
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12" : "tbl_act_38",
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13" : "tbl_act_38",
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14" : "tbl_act_38",
-            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15" : "tbl_act_38",
-            "NoAction" : "tbl_act_38"
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0" : "tbl_act_36",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1" : "tbl_act_36",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2" : "tbl_act_36",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3" : "tbl_act_36",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4" : "tbl_act_36",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5" : "tbl_act_36",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6" : "tbl_act_36",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7" : "tbl_act_36",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8" : "tbl_act_36",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9" : "tbl_act_36",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10" : "tbl_act_36",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11" : "tbl_act_36",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12" : "tbl_act_36",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13" : "tbl_act_36",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14" : "tbl_act_36",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15" : "tbl_act_36",
+            "NoAction" : "tbl_act_36"
           },
           "default_entry" : {
-            "action_id" : 98,
+            "action_id" : 97,
             "action_const" : false,
             "action_data" : [],
             "action_entry_const" : false
@@ -21357,7 +21238,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 119,
+                "action_id" : 118,
                 "action_data" : []
               },
               "priority" : 1
@@ -21376,7 +21257,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 120,
+                "action_id" : 119,
                 "action_data" : []
               },
               "priority" : 2
@@ -21395,7 +21276,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 121,
+                "action_id" : 120,
                 "action_data" : []
               },
               "priority" : 3
@@ -21414,7 +21295,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 122,
+                "action_id" : 121,
                 "action_data" : []
               },
               "priority" : 4
@@ -21433,7 +21314,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 123,
+                "action_id" : 122,
                 "action_data" : []
               },
               "priority" : 5
@@ -21452,7 +21333,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 124,
+                "action_id" : 123,
                 "action_data" : []
               },
               "priority" : 6
@@ -21471,7 +21352,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 125,
+                "action_id" : 124,
                 "action_data" : []
               },
               "priority" : 7
@@ -21490,7 +21371,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 126,
+                "action_id" : 125,
                 "action_data" : []
               },
               "priority" : 8
@@ -21509,7 +21390,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 127,
+                "action_id" : 126,
                 "action_data" : []
               },
               "priority" : 9
@@ -21528,7 +21409,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 128,
+                "action_id" : 127,
                 "action_data" : []
               },
               "priority" : 10
@@ -21547,7 +21428,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 129,
+                "action_id" : 128,
                 "action_data" : []
               },
               "priority" : 11
@@ -21566,7 +21447,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 130,
+                "action_id" : 129,
                 "action_data" : []
               },
               "priority" : 12
@@ -21585,7 +21466,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 131,
+                "action_id" : 130,
                 "action_data" : []
               },
               "priority" : 13
@@ -21604,7 +21485,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 132,
+                "action_id" : 131,
                 "action_data" : []
               },
               "priority" : 14
@@ -21623,7 +21504,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 133,
+                "action_id" : 132,
                 "action_data" : []
               },
               "priority" : 15
@@ -21642,7 +21523,7 @@
                 }
               ],
               "action_entry" : {
-                "action_id" : 134,
+                "action_id" : 133,
                 "action_data" : []
               },
               "priority" : 16
@@ -21650,8 +21531,8 @@
           ]
         },
         {
-          "name" : "tbl_act_38",
-          "id" : 79,
+          "name" : "tbl_act_36",
+          "id" : 76,
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
             "line" : 425,
@@ -21665,22 +21546,22 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [161],
-          "actions" : ["act_39"],
-          "base_default_next" : "node_135",
+          "action_ids" : [159],
+          "actions" : ["act_37"],
+          "base_default_next" : "node_130",
           "next_tables" : {
-            "act_39" : "node_135"
+            "act_37" : "node_130"
           },
           "default_entry" : {
-            "action_id" : 161,
+            "action_id" : 159,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
           }
         },
         {
-          "name" : "tbl_act_39",
-          "id" : 80,
+          "name" : "tbl_act_37",
+          "id" : 77,
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
             "line" : 428,
@@ -21694,22 +21575,22 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [160],
-          "actions" : ["act_38"],
-          "base_default_next" : "node_137",
+          "action_ids" : [158],
+          "actions" : ["act_36"],
+          "base_default_next" : "node_132",
           "next_tables" : {
-            "act_38" : "node_137"
+            "act_36" : "node_132"
           },
           "default_entry" : {
-            "action_id" : 160,
+            "action_id" : 158,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
           }
         },
         {
-          "name" : "tbl_act_40",
-          "id" : 81,
+          "name" : "tbl_act_38",
+          "id" : 78,
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
             "line" : 431,
@@ -21723,22 +21604,22 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [162],
-          "actions" : ["act_40"],
-          "base_default_next" : "node_139",
+          "action_ids" : [160],
+          "actions" : ["act_38"],
+          "base_default_next" : "node_134",
           "next_tables" : {
-            "act_40" : "node_139"
+            "act_38" : "node_134"
           },
           "default_entry" : {
-            "action_id" : 162,
+            "action_id" : 160,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
           }
         },
         {
-          "name" : "tbl_act_41",
-          "id" : 82,
+          "name" : "tbl_act_39",
+          "id" : 79,
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
             "line" : 434,
@@ -21752,14 +21633,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [163],
-          "actions" : ["act_41"],
-          "base_default_next" : "node_141",
+          "action_ids" : [161],
+          "actions" : ["act_39"],
+          "base_default_next" : "node_136",
           "next_tables" : {
-            "act_41" : "node_141"
+            "act_39" : "node_136"
           },
           "default_entry" : {
-            "action_id" : 163,
+            "action_id" : 161,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -21767,7 +21648,7 @@
         },
         {
           "name" : "FabricEgress.process_int_main.process_int_report.tb_generate_report",
-          "id" : 83,
+          "id" : 80,
           "source_info" : {
             "filename" : "include/int/int_report.p4",
             "line" : 87,
@@ -21781,12 +21662,12 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [135, 95],
+          "action_ids" : [134, 95],
           "actions" : ["FabricEgress.process_int_main.process_int_report.do_report_encapsulation", "nop"],
-          "base_default_next" : "node_143",
+          "base_default_next" : "node_138",
           "next_tables" : {
-            "FabricEgress.process_int_main.process_int_report.do_report_encapsulation" : "node_143",
-            "nop" : "node_143"
+            "FabricEgress.process_int_main.process_int_report.do_report_encapsulation" : "node_138",
+            "nop" : "node_138"
           },
           "default_entry" : {
             "action_id" : 95,
@@ -21797,7 +21678,7 @@
         },
         {
           "name" : "tbl_process_int_main_process_int_sink_restore_header",
-          "id" : 84,
+          "id" : 81,
           "source_info" : {
             "filename" : "include/int/int_sink.p4",
             "line" : 53,
@@ -21811,14 +21692,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [136],
+          "action_ids" : [135],
           "actions" : ["FabricEgress.process_int_main.process_int_sink.restore_header"],
           "base_default_next" : "tbl_process_int_main_process_int_sink_int_sink",
           "next_tables" : {
             "FabricEgress.process_int_main.process_int_sink.restore_header" : "tbl_process_int_main_process_int_sink_int_sink"
           },
           "default_entry" : {
-            "action_id" : 136,
+            "action_id" : 135,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -21826,7 +21707,7 @@
         },
         {
           "name" : "tbl_process_int_main_process_int_sink_int_sink",
-          "id" : 85,
+          "id" : 82,
           "source_info" : {
             "filename" : "include/int/int_sink.p4",
             "line" : 54,
@@ -21840,14 +21721,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [137],
+          "action_ids" : [136],
           "actions" : ["FabricEgress.process_int_main.process_int_sink.int_sink"],
           "base_default_next" : null,
           "next_tables" : {
             "FabricEgress.process_int_main.process_int_sink.int_sink" : null
           },
           "default_entry" : {
-            "action_id" : 137,
+            "action_id" : 136,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -21920,7 +21801,7 @@
           "id" : 28,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 335,
+            "line" : 347,
             "column" : 12,
             "source_fragment" : "fabric_metadata.is_multicast == true ..."
           },
@@ -21973,7 +21854,7 @@
           "id" : 29,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 340,
+            "line" : 352,
             "column" : 12,
             "source_fragment" : "fabric_metadata.mpls_label == 0"
           },
@@ -21999,7 +21880,7 @@
           "id" : 30,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 341,
+            "line" : 353,
             "column" : 16,
             "source_fragment" : "hdr.mpls.isValid()"
           },
@@ -22022,7 +21903,7 @@
           "id" : 31,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 347,
+            "line" : 359,
             "column" : 12,
             "source_fragment" : "fabric_metadata.push_double_vlan == true"
           },
@@ -22047,71 +21928,15 @@
               }
             }
           },
-          "true_next" : "tbl_egress_next_push_vlan",
+          "true_next" : "tbl_egress_next_push_outer_vlan",
           "false_next" : "tbl_act_26"
         },
         {
-          "name" : "node_98",
+          "name" : "node_96",
           "id" : 32,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 357,
-            "column" : 16,
-            "source_fragment" : "!egress_vlan.apply().hit"
-          },
-          "expression" : {
-            "type" : "expression",
-            "value" : {
-              "op" : "not",
-              "left" : null,
-              "right" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "d2b",
-                  "left" : null,
-                  "right" : {
-                    "type" : "field",
-                    "value" : ["scalars", "egress_next_tmp"]
-                  }
-                }
-              }
-            }
-          },
-          "true_next" : "node_99",
-          "false_next" : "node_101"
-        },
-        {
-          "name" : "node_99",
-          "id" : 33,
-          "source_info" : {
-            "filename" : "include/control/next.p4",
-            "line" : 359,
-            "column" : 20,
-            "source_fragment" : "fabric_metadata.vlan_id != DEFAULT_VLAN_ID"
-          },
-          "expression" : {
-            "type" : "expression",
-            "value" : {
-              "op" : "!=",
-              "left" : {
-                "type" : "field",
-                "value" : ["scalars", "fabric_metadata_t._vlan_id1"]
-              },
-              "right" : {
-                "type" : "hexstr",
-                "value" : "0x0ffe"
-              }
-            }
-          },
-          "true_next" : "tbl_egress_next_push_vlan_0",
-          "false_next" : "node_101"
-        },
-        {
-          "name" : "node_101",
-          "id" : 34,
-          "source_info" : {
-            "filename" : "include/control/next.p4",
-            "line" : 368,
+            "line" : 374,
             "column" : 12,
             "source_fragment" : "hdr.mpls.isValid()"
           },
@@ -22126,15 +21951,15 @@
               }
             }
           },
-          "true_next" : "tbl_act_29",
-          "false_next" : "node_105"
+          "true_next" : "tbl_act_27",
+          "false_next" : "node_100"
         },
         {
-          "name" : "node_103",
-          "id" : 35,
+          "name" : "node_98",
+          "id" : 33,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 370,
+            "line" : 376,
             "column" : 16,
             "source_fragment" : "hdr.mpls.ttl == 0"
           },
@@ -22152,15 +21977,15 @@
               }
             }
           },
-          "true_next" : "tbl_act_30",
-          "false_next" : "node_113"
+          "true_next" : "tbl_act_28",
+          "false_next" : "node_108"
         },
         {
-          "name" : "node_105",
-          "id" : 36,
+          "name" : "node_100",
+          "id" : 34,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 372,
+            "line" : 378,
             "column" : 15,
             "source_fragment" : "hdr.ipv4.isValid() && fabric_metadata.fwd_type != FWD_BRIDGING"
           },
@@ -22195,15 +22020,15 @@
               }
             }
           },
-          "true_next" : "tbl_act_31",
-          "false_next" : "node_109"
+          "true_next" : "tbl_act_29",
+          "false_next" : "node_104"
         },
         {
-          "name" : "node_107",
-          "id" : 37,
+          "name" : "node_102",
+          "id" : 35,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 374,
+            "line" : 380,
             "column" : 20,
             "source_fragment" : "hdr.ipv4.ttl == 0"
           },
@@ -22221,15 +22046,15 @@
               }
             }
           },
-          "true_next" : "tbl_act_32",
-          "false_next" : "node_113"
+          "true_next" : "tbl_act_30",
+          "false_next" : "node_108"
         },
         {
-          "name" : "node_109",
-          "id" : 38,
+          "name" : "node_104",
+          "id" : 36,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 377,
+            "line" : 383,
             "column" : 21,
             "source_fragment" : "hdr.ipv6.isValid() && fabric_metadata.fwd_type != FWD_BRIDGING"
           },
@@ -22264,15 +22089,15 @@
               }
             }
           },
-          "true_next" : "tbl_act_33",
-          "false_next" : "node_113"
+          "true_next" : "tbl_act_31",
+          "false_next" : "node_108"
         },
         {
-          "name" : "node_111",
-          "id" : 39,
+          "name" : "node_106",
+          "id" : 37,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 379,
+            "line" : 385,
             "column" : 20,
             "source_fragment" : "hdr.ipv6.hop_limit == 0"
           },
@@ -22290,12 +22115,12 @@
               }
             }
           },
-          "true_next" : "tbl_act_34",
-          "false_next" : "node_113"
+          "true_next" : "tbl_act_32",
+          "false_next" : "node_108"
         },
         {
-          "name" : "node_113",
-          "id" : 40,
+          "name" : "node_108",
+          "id" : 38,
           "source_info" : {
             "filename" : "include/control/spgw.p4",
             "line" : 328,
@@ -22323,12 +22148,12 @@
               }
             }
           },
-          "true_next" : "node_114",
-          "false_next" : "node_118"
+          "true_next" : "node_109",
+          "false_next" : "node_113"
         },
         {
-          "name" : "node_114",
-          "id" : 41,
+          "name" : "node_109",
+          "id" : 39,
           "source_info" : {
             "filename" : "include/control/spgw.p4",
             "line" : 329,
@@ -22357,11 +22182,11 @@
             }
           },
           "true_next" : "tbl_spgw_gtpu_encap",
-          "false_next" : "node_116"
+          "false_next" : "node_111"
         },
         {
-          "name" : "node_116",
-          "id" : 42,
+          "name" : "node_111",
+          "id" : 40,
           "source_info" : {
             "filename" : "include/control/spgw.p4",
             "line" : 332,
@@ -22389,12 +22214,12 @@
               }
             }
           },
-          "true_next" : "tbl_act_35",
-          "false_next" : "node_118"
+          "true_next" : "tbl_act_33",
+          "false_next" : "node_113"
         },
         {
-          "name" : "node_118",
-          "id" : 43,
+          "name" : "node_113",
+          "id" : 41,
           "source_info" : {
             "filename" : "include/bng.p4",
             "line" : 358,
@@ -22415,12 +22240,12 @@
               }
             }
           },
-          "true_next" : "node_119",
-          "false_next" : "node_123"
+          "true_next" : "node_114",
+          "false_next" : "node_118"
         },
         {
-          "name" : "node_119",
-          "id" : 44,
+          "name" : "node_114",
+          "id" : 42,
           "source_info" : {
             "filename" : "include/bng.p4",
             "line" : 296,
@@ -22439,11 +22264,11 @@
             }
           },
           "true_next" : "tbl_bng_egress_downstream_encap_v4",
-          "false_next" : "node_121"
+          "false_next" : "node_116"
         },
         {
-          "name" : "node_121",
-          "id" : 45,
+          "name" : "node_116",
+          "id" : 43,
           "source_info" : {
             "filename" : "include/bng.p4",
             "line" : 301,
@@ -22462,11 +22287,11 @@
             }
           },
           "true_next" : "tbl_bng_egress_downstream_encap_v6",
-          "false_next" : "node_123"
+          "false_next" : "node_118"
         },
         {
-          "name" : "node_123",
-          "id" : 46,
+          "name" : "node_118",
+          "id" : 44,
           "source_info" : {
             "filename" : "include/int/int_main.p4",
             "line" : 102,
@@ -22542,11 +22367,11 @@
             }
           },
           "false_next" : null,
-          "true_next" : "node_124"
+          "true_next" : "node_119"
         },
         {
-          "name" : "node_124",
-          "id" : 47,
+          "name" : "node_119",
+          "id" : 45,
           "source_info" : {
             "filename" : "include/int/int_main.p4",
             "line" : 106,
@@ -22575,11 +22400,11 @@
             }
           },
           "true_next" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
-          "false_next" : "node_126"
+          "false_next" : "node_121"
         },
         {
-          "name" : "node_126",
-          "id" : 48,
+          "name" : "node_121",
+          "id" : 46,
           "source_info" : {
             "filename" : "include/int/int_main.p4",
             "line" : 110,
@@ -22598,11 +22423,11 @@
             }
           },
           "false_next" : null,
-          "true_next" : "tbl_act_36"
+          "true_next" : "tbl_act_34"
         },
         {
-          "name" : "node_129",
-          "id" : 49,
+          "name" : "node_124",
+          "id" : 47,
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
             "line" : 419,
@@ -22630,12 +22455,12 @@
               }
             }
           },
-          "true_next" : "tbl_act_37",
-          "false_next" : "node_131"
+          "true_next" : "tbl_act_35",
+          "false_next" : "node_126"
         },
         {
-          "name" : "node_131",
-          "id" : 50,
+          "name" : "node_126",
+          "id" : 48,
           "expression" : {
             "type" : "expression",
             "value" : {
@@ -22655,11 +22480,11 @@
             }
           },
           "true_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003",
-          "false_next" : "node_141"
+          "false_next" : "node_136"
         },
         {
-          "name" : "node_135",
-          "id" : 51,
+          "name" : "node_130",
+          "id" : 49,
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
             "line" : 427,
@@ -22677,12 +22502,12 @@
               }
             }
           },
-          "true_next" : "tbl_act_39",
-          "false_next" : "node_137"
+          "true_next" : "tbl_act_37",
+          "false_next" : "node_132"
         },
         {
-          "name" : "node_137",
-          "id" : 52,
+          "name" : "node_132",
+          "id" : 50,
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
             "line" : 430,
@@ -22700,12 +22525,12 @@
               }
             }
           },
-          "true_next" : "tbl_act_40",
-          "false_next" : "node_139"
+          "true_next" : "tbl_act_38",
+          "false_next" : "node_134"
         },
         {
-          "name" : "node_139",
-          "id" : 53,
+          "name" : "node_134",
+          "id" : 51,
           "source_info" : {
             "filename" : "include/int/int_transit.p4",
             "line" : 433,
@@ -22723,12 +22548,12 @@
               }
             }
           },
-          "true_next" : "tbl_act_41",
-          "false_next" : "node_141"
+          "true_next" : "tbl_act_39",
+          "false_next" : "node_136"
         },
         {
-          "name" : "node_141",
-          "id" : 54,
+          "name" : "node_136",
+          "id" : 52,
           "source_info" : {
             "filename" : "include/int/int_main.p4",
             "line" : 115,
@@ -22750,11 +22575,11 @@
             }
           },
           "true_next" : "FabricEgress.process_int_main.process_int_report.tb_generate_report",
-          "false_next" : "node_143"
+          "false_next" : "node_138"
         },
         {
-          "name" : "node_143",
-          "id" : 55,
+          "name" : "node_138",
+          "id" : 53,
           "source_info" : {
             "filename" : "include/int/int_main.p4",
             "line" : 119,