[SDFAB-357] Backport slicing in fabric and add support for QFI in PDR and fabric

Change-Id: Ieb10140dc0029a0cbf59ddfbb77f64f9a8c7379e
(cherry picked from commit 411f6f7f461db6491d627c2cb31642bdd6e7c8d8)
diff --git a/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-bng/bmv2/default/bmv2.json b/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-bng/bmv2/default/bmv2.json
index 19a3cd9..2d265cb 100644
--- a/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-bng/bmv2/default/bmv2.json
+++ b/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-bng/bmv2/default/bmv2.json
@@ -7,6 +7,7 @@
         ["tmp_0", 1, false],
         ["tmp_2", 3, false],
         ["tmp_4", 8, false],
+        ["gtpu_ext_len_0", 8, false],
         ["tmp_1", 16, false],
         ["tmp_3", 16, false],
         ["tmp_5", 4, false],
@@ -14,41 +15,50 @@
         ["tmp_7", 64, false],
         ["tmp_8", 32, false],
         ["tmp_9", 32, false],
-        ["acl_ipv4_src", 32, false],
-        ["acl_ipv4_dst", 32, false],
-        ["acl_ip_proto", 8, false],
-        ["acl_l4_sport", 16, false],
-        ["acl_l4_dport", 16, false],
+        ["tmp_10", 32, false],
         ["bng_ingress_upstream_hasReturned", 1, false],
-        ["userMetadata._ip_eth_type0", 16, false],
-        ["userMetadata._vlan_id1", 12, false],
-        ["userMetadata._vlan_pri2", 3, false],
-        ["userMetadata._vlan_cfi3", 1, false],
-        ["userMetadata._push_double_vlan4", 1, false],
-        ["userMetadata._inner_vlan_id5", 12, false],
-        ["userMetadata._inner_vlan_pri6", 3, false],
-        ["userMetadata._inner_vlan_cfi7", 1, false],
-        ["userMetadata._mpls_label8", 20, false],
-        ["userMetadata._mpls_ttl9", 8, false],
-        ["userMetadata._skip_forwarding10", 1, false],
-        ["userMetadata._skip_next11", 1, false],
-        ["userMetadata._fwd_type12", 3, false],
-        ["userMetadata._next_id13", 32, false],
-        ["userMetadata._is_multicast14", 1, false],
-        ["userMetadata._is_controller_packet_out15", 1, false],
-        ["userMetadata._ip_proto16", 8, false],
-        ["userMetadata._l4_sport17", 16, false],
-        ["userMetadata._l4_dport18", 16, false],
-        ["userMetadata._ipv4_src_addr19", 32, false],
-        ["userMetadata._ipv4_dst_addr20", 32, false],
-        ["userMetadata._bng_type21", 2, false],
-        ["userMetadata._bng_line_id22", 32, false],
-        ["userMetadata._bng_pppoe_session_id23", 16, false],
-        ["userMetadata._bng_ds_meter_result24", 32, false],
-        ["userMetadata._bng_s_tag25", 12, false],
-        ["userMetadata._bng_c_tag26", 12, false],
-        ["userMetadata._port_type27", 2, false],
-        ["_padding_0", 7, false]
+        ["dscp_rewriter_tmp_dscp", 6, false],
+        ["userMetadata._lkp_is_ipv40", 1, false],
+        ["userMetadata._lkp_ipv4_src1", 32, false],
+        ["userMetadata._lkp_ipv4_dst2", 32, false],
+        ["userMetadata._lkp_ip_proto3", 8, false],
+        ["userMetadata._lkp_l4_sport4", 16, false],
+        ["userMetadata._lkp_l4_dport5", 16, false],
+        ["userMetadata._lkp_icmp_type6", 8, false],
+        ["userMetadata._lkp_icmp_code7", 8, false],
+        ["userMetadata._ip_eth_type8", 16, false],
+        ["userMetadata._vlan_id9", 12, false],
+        ["userMetadata._vlan_pri10", 3, false],
+        ["userMetadata._vlan_cfi11", 1, false],
+        ["userMetadata._push_double_vlan12", 1, false],
+        ["userMetadata._inner_vlan_id13", 12, false],
+        ["userMetadata._inner_vlan_pri14", 3, false],
+        ["userMetadata._inner_vlan_cfi15", 1, false],
+        ["userMetadata._mpls_label16", 20, false],
+        ["userMetadata._mpls_ttl17", 8, false],
+        ["userMetadata._skip_forwarding18", 1, false],
+        ["userMetadata._skip_next19", 1, false],
+        ["userMetadata._fwd_type20", 3, false],
+        ["userMetadata._next_id21", 32, false],
+        ["userMetadata._is_multicast22", 1, false],
+        ["userMetadata._is_controller_packet_out23", 1, false],
+        ["userMetadata._ip_proto24", 8, false],
+        ["userMetadata._l4_sport25", 16, false],
+        ["userMetadata._l4_dport26", 16, false],
+        ["userMetadata._ipv4_src_addr27", 32, false],
+        ["userMetadata._ipv4_dst_addr28", 32, false],
+        ["userMetadata._slice_id29", 4, false],
+        ["userMetadata._packet_color30", 2, false],
+        ["userMetadata._tc31", 2, false],
+        ["userMetadata._dscp32", 6, false],
+        ["userMetadata._bng_type33", 2, false],
+        ["userMetadata._bng_line_id34", 32, false],
+        ["userMetadata._bng_pppoe_session_id35", 16, false],
+        ["userMetadata._bng_ds_meter_result36", 32, false],
+        ["userMetadata._bng_s_tag37", 12, false],
+        ["userMetadata._bng_c_tag38", 12, false],
+        ["userMetadata._port_type39", 2, false],
+        ["_padding_0", 2, false]
       ]
     },
     {
@@ -146,9 +156,31 @@
       ]
     },
     {
-      "name" : "ipv4_t",
+      "name" : "gtpu_options_t",
       "id" : 9,
       "fields" : [
+        ["seq_num", 16, false],
+        ["n_pdu_num", 8, false],
+        ["next_ext", 8, false]
+      ]
+    },
+    {
+      "name" : "gtpu_ext_psc_t",
+      "id" : 10,
+      "fields" : [
+        ["len", 8, false],
+        ["type", 4, false],
+        ["spare0", 4, false],
+        ["ppp", 1, false],
+        ["rqi", 1, false],
+        ["qfi", 6, false],
+        ["next_ext", 8, false]
+      ]
+    },
+    {
+      "name" : "ipv4_t",
+      "id" : 11,
+      "fields" : [
         ["version", 4, false],
         ["ihl", 4, false],
         ["dscp", 6, false],
@@ -166,7 +198,7 @@
     },
     {
       "name" : "udp_t",
-      "id" : 10,
+      "id" : 12,
       "fields" : [
         ["sport", 16, false],
         ["dport", 16, false],
@@ -176,7 +208,7 @@
     },
     {
       "name" : "tcp_t",
-      "id" : 11,
+      "id" : 13,
       "fields" : [
         ["sport", 16, false],
         ["dport", 16, false],
@@ -193,7 +225,7 @@
     },
     {
       "name" : "icmp_t",
-      "id" : 12,
+      "id" : 14,
       "fields" : [
         ["icmp_type", 8, false],
         ["icmp_code", 8, false],
@@ -205,7 +237,7 @@
     },
     {
       "name" : "packet_in_header_t",
-      "id" : 13,
+      "id" : 15,
       "fields" : [
         ["ingress_port", 9, false],
         ["_pad", 7, false]
@@ -291,71 +323,85 @@
       "pi_omit" : true
     },
     {
-      "name" : "inner_ipv4",
+      "name" : "gtpu_options",
       "id" : 11,
+      "header_type" : "gtpu_options_t",
+      "metadata" : false,
+      "pi_omit" : true
+    },
+    {
+      "name" : "gtpu_ext_psc",
+      "id" : 12,
+      "header_type" : "gtpu_ext_psc_t",
+      "metadata" : false,
+      "pi_omit" : true
+    },
+    {
+      "name" : "inner_ipv4",
+      "id" : 13,
       "header_type" : "ipv4_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
       "name" : "inner_udp",
-      "id" : 12,
+      "id" : 14,
       "header_type" : "udp_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
       "name" : "inner_tcp",
-      "id" : 13,
+      "id" : 15,
       "header_type" : "tcp_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
       "name" : "inner_icmp",
-      "id" : 14,
+      "id" : 16,
       "header_type" : "icmp_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
       "name" : "ipv4",
-      "id" : 15,
+      "id" : 17,
       "header_type" : "ipv4_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
       "name" : "tcp",
-      "id" : 16,
+      "id" : 18,
       "header_type" : "tcp_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
       "name" : "udp",
-      "id" : 17,
+      "id" : 19,
       "header_type" : "udp_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
       "name" : "icmp",
-      "id" : 18,
+      "id" : 20,
       "header_type" : "icmp_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
       "name" : "packet_out",
-      "id" : 19,
+      "id" : 21,
       "header_type" : "packet_out_header_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
       "name" : "packet_in",
-      "id" : 20,
+      "id" : 22,
       "header_type" : "packet_in_header_t",
       "metadata" : false,
       "pi_omit" : true
@@ -371,7 +417,7 @@
       "name" : "fl",
       "source_info" : {
         "filename" : "include/control/acl.p4",
-        "line" : 52,
+        "line" : 45,
         "column" : 40,
         "source_fragment" : "{standard_metadata.ingress_port}"
       },
@@ -706,7 +752,7 @@
               "parameters" : [
                 {
                   "type" : "field",
-                  "value" : ["scalars", "userMetadata._vlan_id1"]
+                  "value" : ["scalars", "userMetadata._vlan_id9"]
                 },
                 {
                   "type" : "hexstr",
@@ -779,7 +825,7 @@
               "parameters" : [
                 {
                   "type" : "field",
-                  "value" : ["scalars", "userMetadata._bng_s_tag25"]
+                  "value" : ["scalars", "userMetadata._bng_s_tag37"]
                 },
                 {
                   "type" : "field",
@@ -840,7 +886,7 @@
               "parameters" : [
                 {
                   "type" : "field",
-                  "value" : ["scalars", "userMetadata._bng_c_tag26"]
+                  "value" : ["scalars", "userMetadata._bng_c_tag38"]
                 },
                 {
                   "type" : "field",
@@ -971,7 +1017,7 @@
               "parameters" : [
                 {
                   "type" : "field",
-                  "value" : ["scalars", "userMetadata._mpls_label8"]
+                  "value" : ["scalars", "userMetadata._mpls_label16"]
                 },
                 {
                   "type" : "field",
@@ -984,7 +1030,7 @@
               "parameters" : [
                 {
                   "type" : "field",
-                  "value" : ["scalars", "userMetadata._mpls_ttl9"]
+                  "value" : ["scalars", "userMetadata._mpls_ttl17"]
                 },
                 {
                   "type" : "field",
@@ -1045,7 +1091,7 @@
               "parameters" : [
                 {
                   "type" : "field",
-                  "value" : ["scalars", "userMetadata._ip_proto16"]
+                  "value" : ["scalars", "userMetadata._ip_proto24"]
                 },
                 {
                   "type" : "field",
@@ -1058,7 +1104,7 @@
               "parameters" : [
                 {
                   "type" : "field",
-                  "value" : ["scalars", "userMetadata._ip_eth_type0"]
+                  "value" : ["scalars", "userMetadata._ip_eth_type8"]
                 },
                 {
                   "type" : "hexstr",
@@ -1071,7 +1117,7 @@
               "parameters" : [
                 {
                   "type" : "field",
-                  "value" : ["scalars", "userMetadata._ipv4_src_addr19"]
+                  "value" : ["scalars", "userMetadata._ipv4_src_addr27"]
                 },
                 {
                   "type" : "field",
@@ -1084,7 +1130,7 @@
               "parameters" : [
                 {
                   "type" : "field",
-                  "value" : ["scalars", "userMetadata._ipv4_dst_addr20"]
+                  "value" : ["scalars", "userMetadata._ipv4_dst_addr28"]
                 },
                 {
                   "type" : "field",
@@ -1144,7 +1190,7 @@
               "parameters" : [
                 {
                   "type" : "field",
-                  "value" : ["scalars", "userMetadata._l4_sport17"]
+                  "value" : ["scalars", "userMetadata._l4_sport25"]
                 },
                 {
                   "type" : "field",
@@ -1157,7 +1203,7 @@
               "parameters" : [
                 {
                   "type" : "field",
-                  "value" : ["scalars", "userMetadata._l4_dport18"]
+                  "value" : ["scalars", "userMetadata._l4_dport26"]
                 },
                 {
                   "type" : "field",
@@ -1194,7 +1240,7 @@
               "parameters" : [
                 {
                   "type" : "field",
-                  "value" : ["scalars", "userMetadata._l4_sport17"]
+                  "value" : ["scalars", "userMetadata._l4_sport25"]
                 },
                 {
                   "type" : "field",
@@ -1207,7 +1253,7 @@
               "parameters" : [
                 {
                   "type" : "field",
-                  "value" : ["scalars", "userMetadata._l4_dport18"]
+                  "value" : ["scalars", "userMetadata._l4_dport26"]
                 },
                 {
                   "type" : "field",
@@ -1795,8 +1841,129 @@
                 }
               ],
               "op" : "extract"
+            }
+          ],
+          "transitions" : [
+            {
+              "type" : "hexstr",
+              "value" : "0x000000",
+              "mask" : null,
+              "next_state" : "parse_inner_ipv4"
             },
             {
+              "type" : "default",
+              "value" : null,
+              "mask" : null,
+              "next_state" : "parse_gtpu_options"
+            }
+          ],
+          "transition_key" : [
+            {
+              "type" : "field",
+              "value" : ["gtpu", "ex_flag"]
+            },
+            {
+              "type" : "field",
+              "value" : ["gtpu", "seq_flag"]
+            },
+            {
+              "type" : "field",
+              "value" : ["gtpu", "npdu_flag"]
+            }
+          ]
+        },
+        {
+          "name" : "parse_gtpu_options",
+          "id" : 15,
+          "parser_ops" : [
+            {
+              "parameters" : [
+                {
+                  "type" : "regular",
+                  "value" : "gtpu_options"
+                }
+              ],
+              "op" : "extract"
+            },
+            {
+              "parameters" : [
+                {
+                  "type" : "field",
+                  "value" : ["scalars", "gtpu_ext_len_0"]
+                },
+                {
+                  "type" : "lookahead",
+                  "value" : [0, 8]
+                }
+              ],
+              "op" : "set"
+            }
+          ],
+          "transitions" : [
+            {
+              "type" : "hexstr",
+              "value" : "0x8501",
+              "mask" : null,
+              "next_state" : "parse_gtpu_ext_psc"
+            },
+            {
+              "type" : "default",
+              "value" : null,
+              "mask" : null,
+              "next_state" : null
+            }
+          ],
+          "transition_key" : [
+            {
+              "type" : "field",
+              "value" : ["gtpu_options", "next_ext"]
+            },
+            {
+              "type" : "field",
+              "value" : ["scalars", "gtpu_ext_len_0"]
+            }
+          ]
+        },
+        {
+          "name" : "parse_gtpu_ext_psc",
+          "id" : 16,
+          "parser_ops" : [
+            {
+              "parameters" : [
+                {
+                  "type" : "regular",
+                  "value" : "gtpu_ext_psc"
+                }
+              ],
+              "op" : "extract"
+            }
+          ],
+          "transitions" : [
+            {
+              "type" : "hexstr",
+              "value" : "0x00",
+              "mask" : null,
+              "next_state" : "parse_inner_ipv4"
+            },
+            {
+              "type" : "default",
+              "value" : null,
+              "mask" : null,
+              "next_state" : null
+            }
+          ],
+          "transition_key" : [
+            {
+              "type" : "field",
+              "value" : ["gtpu_ext_psc", "next_ext"]
+            }
+          ]
+        },
+        {
+          "name" : "parse_inner_ipv4",
+          "id" : 17,
+          "parser_ops" : [
+            {
               "parameters" : [
                 {
                   "type" : "regular",
@@ -1841,7 +2008,7 @@
         },
         {
           "name" : "parse_inner_udp",
-          "id" : 15,
+          "id" : 18,
           "parser_ops" : [
             {
               "parameters" : [
@@ -1865,7 +2032,7 @@
         },
         {
           "name" : "parse_inner_tcp",
-          "id" : 16,
+          "id" : 19,
           "parser_ops" : [
             {
               "parameters" : [
@@ -1889,7 +2056,7 @@
         },
         {
           "name" : "parse_inner_icmp",
-          "id" : 17,
+          "id" : 20,
           "parser_ops" : [
             {
               "parameters" : [
@@ -1921,11 +2088,11 @@
       "id" : 0,
       "source_info" : {
         "filename" : "include/parser.p4",
-        "line" : 285,
+        "line" : 308,
         "column" : 8,
         "source_fragment" : "FabricDeparser"
       },
-      "order" : ["packet_in", "ethernet", "vlan_tag", "inner_vlan_tag", "eth_type", "pppoe", "mpls", "ipv4", "tcp", "udp", "icmp", "gtpu", "inner_ipv4", "inner_tcp", "inner_udp", "inner_icmp"],
+      "order" : ["packet_in", "ethernet", "vlan_tag", "inner_vlan_tag", "eth_type", "pppoe", "mpls", "ipv4", "tcp", "udp", "icmp", "gtpu", "gtpu_options", "gtpu_ext_psc", "inner_ipv4", "inner_tcp", "inner_udp", "inner_icmp"],
       "primitives" : []
     }
   ],
@@ -1957,6 +2124,20 @@
       "size" : 8192,
       "rate_count" : 2,
       "type" : "bytes"
+    },
+    {
+      "name" : "FabricIngress.qos.slice_tc_meter",
+      "id" : 2,
+      "source_info" : {
+        "filename" : "include/control/slicing.p4",
+        "line" : 78,
+        "column" : 41,
+        "source_fragment" : "slice_tc_meter"
+      },
+      "is_direct" : false,
+      "size" : 64,
+      "rate_count" : 2,
+      "type" : "bytes"
     }
   ],
   "counter_arrays" : [
@@ -2087,7 +2268,7 @@
       "binding" : "FabricIngress.acl.acl",
       "source_info" : {
         "filename" : "include/control/acl.p4",
-        "line" : 36,
+        "line" : 29,
         "column" : 50,
         "source_fragment" : "acl_counter"
       }
@@ -2117,8 +2298,32 @@
       }
     },
     {
-      "name" : "FabricIngress.port_counters_control.egress_port_counter",
+      "name" : "FabricIngress.slice_tc_classifier.classifier_stats",
       "id" : 13,
+      "is_direct" : true,
+      "binding" : "FabricIngress.slice_tc_classifier.classifier",
+      "source_info" : {
+        "filename" : "include/control/slicing.p4",
+        "line" : 32,
+        "column" : 40,
+        "source_fragment" : "classifier_stats"
+      }
+    },
+    {
+      "name" : "FabricIngress.qos.queues_stats",
+      "id" : 14,
+      "is_direct" : true,
+      "binding" : "FabricIngress.qos.queues",
+      "source_info" : {
+        "filename" : "include/control/slicing.p4",
+        "line" : 80,
+        "column" : 40,
+        "source_fragment" : "queues_stats"
+      }
+    },
+    {
+      "name" : "FabricIngress.port_counters_control.egress_port_counter",
+      "id" : 15,
       "source_info" : {
         "filename" : "include/control/port_counter.p4",
         "line" : 26,
@@ -2130,7 +2335,7 @@
     },
     {
       "name" : "FabricIngress.port_counters_control.ingress_port_counter",
-      "id" : 14,
+      "id" : 16,
       "source_info" : {
         "filename" : "include/control/port_counter.p4",
         "line" : 27,
@@ -2142,7 +2347,7 @@
     },
     {
       "name" : "FabricEgress.bng_egress.downstream.c_line_tx",
-      "id" : 15,
+      "id" : 17,
       "source_info" : {
         "filename" : "include/bng.p4",
         "line" : 267,
@@ -2154,7 +2359,7 @@
     },
     {
       "name" : "FabricEgress.egress_next.egress_vlan_counter",
-      "id" : 16,
+      "id" : 18,
       "is_direct" : true,
       "binding" : "FabricEgress.egress_next.egress_vlan",
       "source_info" : {
@@ -2398,7 +2603,7 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._bng_line_id22"]
+              "value" : ["scalars", "userMetadata._bng_line_id34"]
             }
           ],
           "source_info" : {
@@ -2420,7 +2625,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._bng_type21"]
+              "value" : ["scalars", "userMetadata._bng_type33"]
             },
             {
               "type" : "hexstr",
@@ -2429,7 +2634,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../header.p4",
-            "line" : 163,
+            "line" : 184,
             "column" : 36,
             "source_fragment" : "2w0x0; ..."
           }
@@ -2470,7 +2675,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 132,
+            "line" : 149,
             "column" : 31,
             "source_fragment" : "0x0800; ..."
           }
@@ -2499,7 +2704,7 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._bng_line_id22"]
+              "value" : ["scalars", "userMetadata._bng_line_id34"]
             }
           ],
           "source_info" : {
@@ -2526,7 +2731,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._bng_type21"]
+              "value" : ["scalars", "userMetadata._bng_type33"]
             },
             {
               "type" : "hexstr",
@@ -2535,7 +2740,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../header.p4",
-            "line" : 165,
+            "line" : 186,
             "column" : 39,
             "source_fragment" : "2w0x2;; ..."
           }
@@ -2545,7 +2750,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._bng_pppoe_session_id23"]
+              "value" : ["scalars", "userMetadata._bng_pppoe_session_id35"]
             },
             {
               "type" : "runtime_data",
@@ -2568,7 +2773,7 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._bng_line_id22"]
+              "value" : ["scalars", "userMetadata._bng_line_id34"]
             }
           ],
           "source_info" : {
@@ -2590,7 +2795,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._bng_type21"]
+              "value" : ["scalars", "userMetadata._bng_type33"]
             },
             {
               "type" : "hexstr",
@@ -2599,7 +2804,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../header.p4",
-            "line" : 165,
+            "line" : 186,
             "column" : 39,
             "source_fragment" : "2w0x2;; ..."
           }
@@ -2613,7 +2818,7 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._bng_line_id22"]
+              "value" : ["scalars", "userMetadata._bng_line_id34"]
             }
           ],
           "source_info" : {
@@ -2667,7 +2872,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._bng_line_id22"]
+              "value" : ["scalars", "userMetadata._bng_line_id34"]
             },
             {
               "type" : "runtime_data",
@@ -2693,7 +2898,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._skip_forwarding10"]
+              "value" : ["scalars", "userMetadata._skip_forwarding18"]
             },
             {
               "type" : "expression",
@@ -2722,7 +2927,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._skip_next11"]
+              "value" : ["scalars", "userMetadata._skip_next19"]
             },
             {
               "type" : "expression",
@@ -2751,7 +2956,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._port_type27"]
+              "value" : ["scalars", "userMetadata._port_type39"]
             },
             {
               "type" : "hexstr",
@@ -2760,7 +2965,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 119,
+            "line" : 136,
             "column" : 38,
             "source_fragment" : "0x0; ..."
           }
@@ -2782,7 +2987,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._port_type27"]
+              "value" : ["scalars", "userMetadata._port_type39"]
             },
             {
               "type" : "runtime_data",
@@ -2817,7 +3022,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._vlan_id1"]
+              "value" : ["scalars", "userMetadata._vlan_id9"]
             },
             {
               "type" : "runtime_data",
@@ -2836,7 +3041,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._port_type27"]
+              "value" : ["scalars", "userMetadata._port_type39"]
             },
             {
               "type" : "runtime_data",
@@ -2867,7 +3072,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._fwd_type12"]
+              "value" : ["scalars", "userMetadata._fwd_type20"]
             },
             {
               "type" : "runtime_data",
@@ -2898,7 +3103,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._next_id13"]
+              "value" : ["scalars", "userMetadata._next_id21"]
             },
             {
               "type" : "runtime_data",
@@ -2929,7 +3134,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._mpls_label8"]
+              "value" : ["scalars", "userMetadata._mpls_label16"]
             },
             {
               "type" : "hexstr",
@@ -2948,7 +3153,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._next_id13"]
+              "value" : ["scalars", "userMetadata._next_id21"]
             },
             {
               "type" : "runtime_data",
@@ -2979,7 +3184,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._next_id13"]
+              "value" : ["scalars", "userMetadata._next_id21"]
             },
             {
               "type" : "runtime_data",
@@ -3016,7 +3221,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._mpls_label8"]
+              "value" : ["scalars", "userMetadata._mpls_label16"]
             },
             {
               "type" : "runtime_data",
@@ -3047,7 +3252,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._vlan_id1"]
+              "value" : ["scalars", "userMetadata._vlan_id9"]
             },
             {
               "type" : "runtime_data",
@@ -3082,7 +3287,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._vlan_id1"]
+              "value" : ["scalars", "userMetadata._vlan_id9"]
             },
             {
               "type" : "runtime_data",
@@ -3101,7 +3306,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._push_double_vlan4"]
+              "value" : ["scalars", "userMetadata._push_double_vlan12"]
             },
             {
               "type" : "expression",
@@ -3130,7 +3335,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._inner_vlan_id5"]
+              "value" : ["scalars", "userMetadata._inner_vlan_id13"]
             },
             {
               "type" : "runtime_data",
@@ -3149,7 +3354,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._bng_s_tag25"]
+              "value" : ["scalars", "userMetadata._bng_s_tag37"]
             },
             {
               "type" : "runtime_data",
@@ -3168,7 +3373,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._bng_c_tag26"]
+              "value" : ["scalars", "userMetadata._bng_c_tag38"]
             },
             {
               "type" : "runtime_data",
@@ -3199,7 +3404,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._next_id13"]
+              "value" : ["scalars", "userMetadata._next_id21"]
             },
             {
               "type" : "runtime_data",
@@ -3208,8 +3413,8 @@
           ],
           "source_info" : {
             "filename" : "include/control/acl.p4",
-            "line" : 39,
-            "column" : 32,
+            "line" : 32,
+            "column" : 26,
             "source_fragment" : "= next_id; ..."
           }
         }
@@ -3234,7 +3439,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/acl.p4",
-            "line" : 45,
+            "line" : 38,
             "column" : 8,
             "source_fragment" : "standard_metadata.egress_spec = 255"
           }
@@ -3244,7 +3449,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._skip_next11"]
+              "value" : ["scalars", "userMetadata._skip_next19"]
             },
             {
               "type" : "expression",
@@ -3263,8 +3468,8 @@
           ],
           "source_info" : {
             "filename" : "include/control/acl.p4",
-            "line" : 46,
-            "column" : 34,
+            "line" : 39,
+            "column" : 28,
             "source_fragment" : "= true; ..."
           }
         }
@@ -3294,7 +3499,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/acl.p4",
-            "line" : 52,
+            "line" : 45,
             "column" : 8,
             "source_fragment" : "clone3(CloneType.I2E, clone_id, {standard_metadata.ingress_port})"
           }
@@ -3316,7 +3521,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/acl.p4",
-            "line" : 57,
+            "line" : 50,
             "column" : 8,
             "source_fragment" : "mark_to_drop(standard_metadata)"
           }
@@ -3326,7 +3531,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._skip_next11"]
+              "value" : ["scalars", "userMetadata._skip_next19"]
             },
             {
               "type" : "expression",
@@ -3345,8 +3550,8 @@
           ],
           "source_info" : {
             "filename" : "include/control/acl.p4",
-            "line" : 58,
-            "column" : 34,
+            "line" : 51,
+            "column" : 28,
             "source_fragment" : "= true; ..."
           }
         }
@@ -3500,7 +3705,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._is_multicast14"]
+              "value" : ["scalars", "userMetadata._is_multicast22"]
             },
             {
               "type" : "expression",
@@ -3527,8 +3732,811 @@
       ]
     },
     {
-      "name" : "packetio25",
+      "name" : "FabricIngress.slice_tc_classifier.set_slice_id_tc",
       "id" : 36,
+      "runtime_data" : [
+        {
+          "name" : "slice_id",
+          "bitwidth" : 4
+        },
+        {
+          "name" : "tc",
+          "bitwidth" : 2
+        }
+      ],
+      "primitives" : [
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._slice_id29"]
+            },
+            {
+              "type" : "runtime_data",
+              "value" : 0
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/slicing.p4",
+            "line" : 35,
+            "column" : 27,
+            "source_fragment" : "= slice_id; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._tc31"]
+            },
+            {
+              "type" : "runtime_data",
+              "value" : 1
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/slicing.p4",
+            "line" : 36,
+            "column" : 21,
+            "source_fragment" : "= tc; ..."
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricIngress.slice_tc_classifier.trust_dscp",
+      "id" : 37,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._slice_id29"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "&",
+                      "left" : {
+                        "type" : "expression",
+                        "value" : {
+                          "op" : ">>",
+                          "left" : {
+                            "type" : "field",
+                            "value" : ["ipv4", "dscp"]
+                          },
+                          "right" : {
+                            "type" : "hexstr",
+                            "value" : "0x2"
+                          }
+                        }
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x3f"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0x0f"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/slicing.p4",
+            "line" : 44,
+            "column" : 27,
+            "source_fragment" : "= hdr.ipv4.dscp[4 +2 -1:2]; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._tc31"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["ipv4", "dscp"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0x03"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/slicing.p4",
+            "line" : 45,
+            "column" : 21,
+            "source_fragment" : "= hdr.ipv4.dscp[2 -1:0]; ..."
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricIngress.qos.set_queue",
+      "id" : 38,
+      "runtime_data" : [
+        {
+          "name" : "qid",
+          "bitwidth" : 5
+        }
+      ],
+      "primitives" : []
+    },
+    {
+      "name" : "FabricIngress.qos.meter_drop",
+      "id" : 39,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "mark_to_drop",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "standard_metadata"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/slicing.p4",
+            "line" : 89,
+            "column" : 8,
+            "source_fragment" : "mark_to_drop(standard_metadata)"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "lookup_md_init37",
+      "id" : 40,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._lkp_l4_sport4"]
+            },
+            {
+              "type" : "field",
+              "value" : ["inner_tcp", "sport"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 37,
+            "column" : 32,
+            "source_fragment" : "= hdr.inner_tcp.sport; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._lkp_l4_dport5"]
+            },
+            {
+              "type" : "field",
+              "value" : ["inner_tcp", "dport"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 38,
+            "column" : 32,
+            "source_fragment" : "= hdr.inner_tcp.dport; ..."
+          }
+        }
+      ]
+    },
+    {
+      "name" : "lookup_md_init40",
+      "id" : 41,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._lkp_l4_sport4"]
+            },
+            {
+              "type" : "field",
+              "value" : ["inner_udp", "sport"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 40,
+            "column" : 32,
+            "source_fragment" : "= hdr.inner_udp.sport; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._lkp_l4_dport5"]
+            },
+            {
+              "type" : "field",
+              "value" : ["inner_udp", "dport"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 41,
+            "column" : 32,
+            "source_fragment" : "= hdr.inner_udp.dport; ..."
+          }
+        }
+      ]
+    },
+    {
+      "name" : "lookup_md_init43",
+      "id" : 42,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._lkp_icmp_type6"]
+            },
+            {
+              "type" : "field",
+              "value" : ["inner_icmp", "icmp_type"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 43,
+            "column" : 33,
+            "source_fragment" : "= hdr.inner_icmp.icmp_type; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._lkp_icmp_code7"]
+            },
+            {
+              "type" : "field",
+              "value" : ["inner_icmp", "icmp_code"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 44,
+            "column" : 33,
+            "source_fragment" : "= hdr.inner_icmp.icmp_code; ..."
+          }
+        }
+      ]
+    },
+    {
+      "name" : "lookup_md_init32",
+      "id" : 43,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._lkp_is_ipv40"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "b2d",
+                  "left" : null,
+                  "right" : {
+                    "type" : "bool",
+                    "value" : true
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 32,
+            "column" : 27,
+            "source_fragment" : "= true; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._lkp_ipv4_src1"]
+            },
+            {
+              "type" : "field",
+              "value" : ["inner_ipv4", "src_addr"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 33,
+            "column" : 28,
+            "source_fragment" : "= hdr.inner_ipv4.src_addr; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._lkp_ipv4_dst2"]
+            },
+            {
+              "type" : "field",
+              "value" : ["inner_ipv4", "dst_addr"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 34,
+            "column" : 28,
+            "source_fragment" : "= hdr.inner_ipv4.dst_addr; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._lkp_ip_proto3"]
+            },
+            {
+              "type" : "field",
+              "value" : ["inner_ipv4", "protocol"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 35,
+            "column" : 28,
+            "source_fragment" : "= hdr.inner_ipv4.protocol; ..."
+          }
+        }
+      ]
+    },
+    {
+      "name" : "lookup_md_init52",
+      "id" : 44,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._lkp_l4_sport4"]
+            },
+            {
+              "type" : "field",
+              "value" : ["tcp", "sport"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 52,
+            "column" : 32,
+            "source_fragment" : "= hdr.tcp.sport; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._lkp_l4_dport5"]
+            },
+            {
+              "type" : "field",
+              "value" : ["tcp", "dport"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 53,
+            "column" : 32,
+            "source_fragment" : "= hdr.tcp.dport; ..."
+          }
+        }
+      ]
+    },
+    {
+      "name" : "lookup_md_init55",
+      "id" : 45,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._lkp_l4_sport4"]
+            },
+            {
+              "type" : "field",
+              "value" : ["udp", "sport"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 55,
+            "column" : 32,
+            "source_fragment" : "= hdr.udp.sport; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._lkp_l4_dport5"]
+            },
+            {
+              "type" : "field",
+              "value" : ["udp", "dport"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 56,
+            "column" : 32,
+            "source_fragment" : "= hdr.udp.dport; ..."
+          }
+        }
+      ]
+    },
+    {
+      "name" : "lookup_md_init58",
+      "id" : 46,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._lkp_icmp_type6"]
+            },
+            {
+              "type" : "field",
+              "value" : ["icmp", "icmp_type"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 58,
+            "column" : 33,
+            "source_fragment" : "= hdr.icmp.icmp_type; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._lkp_icmp_code7"]
+            },
+            {
+              "type" : "field",
+              "value" : ["icmp", "icmp_code"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 59,
+            "column" : 33,
+            "source_fragment" : "= hdr.icmp.icmp_code; ..."
+          }
+        }
+      ]
+    },
+    {
+      "name" : "lookup_md_init47",
+      "id" : 47,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._lkp_is_ipv40"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "b2d",
+                  "left" : null,
+                  "right" : {
+                    "type" : "bool",
+                    "value" : true
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 47,
+            "column" : 27,
+            "source_fragment" : "= true; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._lkp_ipv4_src1"]
+            },
+            {
+              "type" : "field",
+              "value" : ["ipv4", "src_addr"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 48,
+            "column" : 28,
+            "source_fragment" : "= hdr.ipv4.src_addr; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._lkp_ipv4_dst2"]
+            },
+            {
+              "type" : "field",
+              "value" : ["ipv4", "dst_addr"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 49,
+            "column" : 28,
+            "source_fragment" : "= hdr.ipv4.dst_addr; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._lkp_ip_proto3"]
+            },
+            {
+              "type" : "field",
+              "value" : ["ipv4", "protocol"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 50,
+            "column" : 28,
+            "source_fragment" : "= hdr.ipv4.protocol; ..."
+          }
+        }
+      ]
+    },
+    {
+      "name" : "lookup_md_init23",
+      "id" : 48,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._lkp_is_ipv40"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "b2d",
+                  "left" : null,
+                  "right" : {
+                    "type" : "bool",
+                    "value" : false
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 23,
+            "column" : 23,
+            "source_fragment" : "= false; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._lkp_ipv4_src1"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00000000"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 24,
+            "column" : 24,
+            "source_fragment" : "= 0; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._lkp_ipv4_dst2"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00000000"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 25,
+            "column" : 24,
+            "source_fragment" : "= 0; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._lkp_ip_proto3"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 26,
+            "column" : 24,
+            "source_fragment" : "= 0; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._lkp_l4_sport4"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x0000"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 27,
+            "column" : 24,
+            "source_fragment" : "= 0; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._lkp_l4_dport5"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x0000"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 28,
+            "column" : 24,
+            "source_fragment" : "= 0; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._lkp_icmp_type6"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 29,
+            "column" : 25,
+            "source_fragment" : "= 0; ..."
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._lkp_icmp_code7"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 30,
+            "column" : 25,
+            "source_fragment" : "= 0; ..."
+          }
+        }
+      ]
+    },
+    {
+      "name" : "packetio25",
+      "id" : 49,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -3570,7 +4578,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._is_controller_packet_out15"]
+              "value" : ["scalars", "userMetadata._is_controller_packet_out23"]
             },
             {
               "type" : "expression",
@@ -3608,7 +4616,7 @@
     },
     {
       "name" : "filtering113",
-      "id" : 37,
+      "id" : 50,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -3616,7 +4624,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._vlan_id1"]
+              "value" : ["scalars", "userMetadata._vlan_id9"]
             },
             {
               "type" : "field",
@@ -3635,7 +4643,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._vlan_pri2"]
+              "value" : ["scalars", "userMetadata._vlan_pri10"]
             },
             {
               "type" : "field",
@@ -3654,7 +4662,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._vlan_cfi3"]
+              "value" : ["scalars", "userMetadata._vlan_cfi11"]
             },
             {
               "type" : "field",
@@ -3672,7 +4680,7 @@
     },
     {
       "name" : "filtering119",
-      "id" : 38,
+      "id" : 51,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -3680,7 +4688,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._inner_vlan_id5"]
+              "value" : ["scalars", "userMetadata._inner_vlan_id13"]
             },
             {
               "type" : "field",
@@ -3699,7 +4707,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._inner_vlan_pri6"]
+              "value" : ["scalars", "userMetadata._inner_vlan_pri14"]
             },
             {
               "type" : "field",
@@ -3718,7 +4726,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._inner_vlan_cfi7"]
+              "value" : ["scalars", "userMetadata._inner_vlan_cfi15"]
             },
             {
               "type" : "field",
@@ -3736,7 +4744,7 @@
     },
     {
       "name" : "filtering129",
-      "id" : 39,
+      "id" : 52,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -3744,7 +4752,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._mpls_ttl9"]
+              "value" : ["scalars", "userMetadata._mpls_ttl17"]
             },
             {
               "type" : "hexstr",
@@ -3761,418 +4769,8 @@
       ]
     },
     {
-      "name" : "acl102",
-      "id" : 40,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "acl_l4_sport"]
-            },
-            {
-              "type" : "field",
-              "value" : ["inner_tcp", "sport"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 102,
-            "column" : 16,
-            "source_fragment" : "l4_sport = hdr.inner_tcp.sport"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "acl_l4_dport"]
-            },
-            {
-              "type" : "field",
-              "value" : ["inner_tcp", "dport"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 103,
-            "column" : 16,
-            "source_fragment" : "l4_dport = hdr.inner_tcp.dport"
-          }
-        }
-      ]
-    },
-    {
-      "name" : "acl105",
-      "id" : 41,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "acl_l4_sport"]
-            },
-            {
-              "type" : "field",
-              "value" : ["inner_udp", "sport"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 105,
-            "column" : 16,
-            "source_fragment" : "l4_sport = hdr.inner_udp.sport"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "acl_l4_dport"]
-            },
-            {
-              "type" : "field",
-              "value" : ["inner_udp", "dport"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 106,
-            "column" : 16,
-            "source_fragment" : "l4_dport = hdr.inner_udp.dport"
-          }
-        }
-      ]
-    },
-    {
-      "name" : "acl98",
-      "id" : 42,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "acl_ipv4_src"]
-            },
-            {
-              "type" : "field",
-              "value" : ["inner_ipv4", "src_addr"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 98,
-            "column" : 12,
-            "source_fragment" : "ipv4_src = hdr.inner_ipv4.src_addr"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "acl_ipv4_dst"]
-            },
-            {
-              "type" : "field",
-              "value" : ["inner_ipv4", "dst_addr"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 99,
-            "column" : 12,
-            "source_fragment" : "ipv4_dst = hdr.inner_ipv4.dst_addr"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "acl_ip_proto"]
-            },
-            {
-              "type" : "field",
-              "value" : ["inner_ipv4", "protocol"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 100,
-            "column" : 12,
-            "source_fragment" : "ip_proto = hdr.inner_ipv4.protocol"
-          }
-        }
-      ]
-    },
-    {
-      "name" : "acl113",
-      "id" : 43,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "acl_l4_sport"]
-            },
-            {
-              "type" : "field",
-              "value" : ["tcp", "sport"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 113,
-            "column" : 16,
-            "source_fragment" : "l4_sport = hdr.tcp.sport"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "acl_l4_dport"]
-            },
-            {
-              "type" : "field",
-              "value" : ["tcp", "dport"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 114,
-            "column" : 16,
-            "source_fragment" : "l4_dport = hdr.tcp.dport"
-          }
-        }
-      ]
-    },
-    {
-      "name" : "acl116",
-      "id" : 44,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "acl_l4_sport"]
-            },
-            {
-              "type" : "field",
-              "value" : ["udp", "sport"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 116,
-            "column" : 16,
-            "source_fragment" : "l4_sport = hdr.udp.sport"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "acl_l4_dport"]
-            },
-            {
-              "type" : "field",
-              "value" : ["udp", "dport"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 117,
-            "column" : 16,
-            "source_fragment" : "l4_dport = hdr.udp.dport"
-          }
-        }
-      ]
-    },
-    {
-      "name" : "acl109",
-      "id" : 45,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "acl_ipv4_src"]
-            },
-            {
-              "type" : "field",
-              "value" : ["ipv4", "src_addr"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 109,
-            "column" : 12,
-            "source_fragment" : "ipv4_src = hdr.ipv4.src_addr"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "acl_ipv4_dst"]
-            },
-            {
-              "type" : "field",
-              "value" : ["ipv4", "dst_addr"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 110,
-            "column" : 12,
-            "source_fragment" : "ipv4_dst = hdr.ipv4.dst_addr"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "acl_ip_proto"]
-            },
-            {
-              "type" : "field",
-              "value" : ["ipv4", "protocol"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 111,
-            "column" : 12,
-            "source_fragment" : "ip_proto = hdr.ipv4.protocol"
-          }
-        }
-      ]
-    },
-    {
-      "name" : "acl27",
-      "id" : 46,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "acl_ipv4_src"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00000000"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 27,
-            "column" : 4,
-            "source_fragment" : "ipv4_addr_t ipv4_src = 0;"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "acl_ipv4_dst"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00000000"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 28,
-            "column" : 4,
-            "source_fragment" : "ipv4_addr_t ipv4_dst = 0;"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "acl_ip_proto"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 29,
-            "column" : 4,
-            "source_fragment" : "bit<8> ip_proto = 0;"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "acl_l4_sport"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x0000"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 30,
-            "column" : 4,
-            "source_fragment" : "l4_port_t l4_sport = 0;"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "acl_l4_dport"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x0000"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 31,
-            "column" : 4,
-            "source_fragment" : "l4_port_t l4_dport = 0;"
-          }
-        }
-      ]
-    },
-    {
       "name" : "port_counter31",
-      "id" : 47,
+      "id" : 53,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -4230,7 +4828,7 @@
     },
     {
       "name" : "port_counter34",
-      "id" : 48,
+      "id" : 54,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -4288,7 +4886,7 @@
     },
     {
       "name" : "bng126",
-      "id" : 49,
+      "id" : 55,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -4324,7 +4922,7 @@
     },
     {
       "name" : "bng342",
-      "id" : 50,
+      "id" : 56,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -4332,7 +4930,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._bng_type21"]
+              "value" : ["scalars", "userMetadata._bng_type33"]
             },
             {
               "type" : "hexstr",
@@ -4341,7 +4939,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../header.p4",
-            "line" : 164,
+            "line" : 185,
             "column" : 37,
             "source_fragment" : "2w0x1; ..."
           }
@@ -4373,7 +4971,7 @@
     },
     {
       "name" : "bng131",
-      "id" : 51,
+      "id" : 57,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -4385,7 +4983,7 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._bng_line_id22"]
+              "value" : ["scalars", "userMetadata._bng_line_id34"]
             }
           ],
           "source_info" : {
@@ -4399,7 +4997,7 @@
     },
     {
       "name" : "bng238",
-      "id" : 52,
+      "id" : 58,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -4411,11 +5009,11 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._bng_line_id22"]
+              "value" : ["scalars", "userMetadata._bng_line_id34"]
             },
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._bng_ds_meter_result24"]
+              "value" : ["scalars", "userMetadata._bng_ds_meter_result36"]
             }
           ],
           "source_info" : {
@@ -4429,7 +5027,7 @@
     },
     {
       "name" : "bng241",
-      "id" : 53,
+      "id" : 59,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -4441,11 +5039,11 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._bng_line_id22"]
+              "value" : ["scalars", "userMetadata._bng_line_id34"]
             },
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._bng_ds_meter_result24"]
+              "value" : ["scalars", "userMetadata._bng_ds_meter_result36"]
             }
           ],
           "source_info" : {
@@ -4458,8 +5056,218 @@
       ]
     },
     {
+      "name" : "slicing114",
+      "id" : 60,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "tmp_10"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "|",
+                      "left" : {
+                        "type" : "expression",
+                        "value" : {
+                          "op" : "&",
+                          "left" : {
+                            "type" : "expression",
+                            "value" : {
+                              "op" : "<<",
+                              "left" : {
+                                "type" : "expression",
+                                "value" : {
+                                  "op" : "&",
+                                  "left" : {
+                                    "type" : "field",
+                                    "value" : ["scalars", "userMetadata._slice_id29"]
+                                  },
+                                  "right" : {
+                                    "type" : "hexstr",
+                                    "value" : "0x3f"
+                                  }
+                                }
+                              },
+                              "right" : {
+                                "type" : "hexstr",
+                                "value" : "0x2"
+                              }
+                            }
+                          },
+                          "right" : {
+                            "type" : "hexstr",
+                            "value" : "0x3f"
+                          }
+                        }
+                      },
+                      "right" : {
+                        "type" : "expression",
+                        "value" : {
+                          "op" : "&",
+                          "left" : {
+                            "type" : "expression",
+                            "value" : {
+                              "op" : "&",
+                              "left" : {
+                                "type" : "field",
+                                "value" : ["scalars", "userMetadata._tc31"]
+                              },
+                              "right" : {
+                                "type" : "hexstr",
+                                "value" : "0x3f"
+                              }
+                            }
+                          },
+                          "right" : {
+                            "type" : "hexstr",
+                            "value" : "0x07"
+                          }
+                        }
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffffffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/slicing.p4",
+            "line" : 114,
+            "column" : 37,
+            "source_fragment" : "(bit<32>) slice_tc"
+          }
+        },
+        {
+          "op" : "execute_meter",
+          "parameters" : [
+            {
+              "type" : "meter_array",
+              "value" : "FabricIngress.qos.slice_tc_meter"
+            },
+            {
+              "type" : "field",
+              "value" : ["scalars", "tmp_10"]
+            },
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._packet_color30"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/slicing.p4",
+            "line" : 114,
+            "column" : 8,
+            "source_fragment" : "slice_tc_meter.execute_meter((bit<32>) slice_tc, fabric_md.packet_color)"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._dscp32"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "|",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "&",
+                      "left" : {
+                        "type" : "expression",
+                        "value" : {
+                          "op" : "<<",
+                          "left" : {
+                            "type" : "expression",
+                            "value" : {
+                              "op" : "&",
+                              "left" : {
+                                "type" : "field",
+                                "value" : ["scalars", "userMetadata._slice_id29"]
+                              },
+                              "right" : {
+                                "type" : "hexstr",
+                                "value" : "0x3f"
+                              }
+                            }
+                          },
+                          "right" : {
+                            "type" : "hexstr",
+                            "value" : "0x2"
+                          }
+                        }
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x3f"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "&",
+                      "left" : {
+                        "type" : "expression",
+                        "value" : {
+                          "op" : "&",
+                          "left" : {
+                            "type" : "field",
+                            "value" : ["scalars", "userMetadata._tc31"]
+                          },
+                          "right" : {
+                            "type" : "hexstr",
+                            "value" : "0x3f"
+                          }
+                        }
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x07"
+                      }
+                    }
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/slicing.p4",
+            "line" : 110,
+            "column" : 26,
+            "source_fragment" : "fabric_md.slice_id++fabric_md.tc; ..."
+          }
+        }
+      ]
+    },
+    {
+      "name" : "nop",
+      "id" : 61,
+      "runtime_data" : [],
+      "primitives" : []
+    },
+    {
       "name" : "FabricEgress.bng_egress.downstream.encap_v4",
-      "id" : 54,
+      "id" : 62,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -4476,7 +5284,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 136,
+            "line" : 153,
             "column" : 33,
             "source_fragment" : "0x8864; ..."
           }
@@ -4562,7 +5370,7 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._bng_pppoe_session_id23"]
+              "value" : ["scalars", "userMetadata._bng_pppoe_session_id35"]
             }
           ],
           "source_info" : {
@@ -4581,7 +5389,7 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._bng_line_id22"]
+              "value" : ["scalars", "userMetadata._bng_line_id34"]
             }
           ],
           "source_info" : {
@@ -4647,7 +5455,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 138,
+            "line" : 155,
             "column" : 35,
             "source_fragment" : "0x0021; ..."
           }
@@ -4656,7 +5464,7 @@
     },
     {
       "name" : "FabricEgress.egress_next.pop_mpls_if_present",
-      "id" : 55,
+      "id" : 63,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -4683,7 +5491,7 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._ip_eth_type0"]
+              "value" : ["scalars", "userMetadata._ip_eth_type8"]
             }
           ],
           "source_info" : {
@@ -4697,7 +5505,7 @@
     },
     {
       "name" : "FabricEgress.egress_next.set_mpls",
-      "id" : 56,
+      "id" : 64,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -4724,7 +5532,7 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._mpls_label8"]
+              "value" : ["scalars", "userMetadata._mpls_label16"]
             }
           ],
           "source_info" : {
@@ -4781,7 +5589,7 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._mpls_ttl9"]
+              "value" : ["scalars", "userMetadata._mpls_ttl17"]
             }
           ],
           "source_info" : {
@@ -4805,7 +5613,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 130,
+            "line" : 147,
             "column" : 31,
             "source_fragment" : "0x8847; ..."
           }
@@ -4814,7 +5622,7 @@
     },
     {
       "name" : "FabricEgress.egress_next.push_outer_vlan",
-      "id" : 57,
+      "id" : 65,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -4841,7 +5649,7 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._vlan_cfi3"]
+              "value" : ["scalars", "userMetadata._vlan_cfi11"]
             }
           ],
           "source_info" : {
@@ -4860,7 +5668,7 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._vlan_pri2"]
+              "value" : ["scalars", "userMetadata._vlan_pri10"]
             }
           ],
           "source_info" : {
@@ -4884,7 +5692,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 129,
+            "line" : 146,
             "column" : 31,
             "source_fragment" : "0x8100; ..."
           }
@@ -4898,7 +5706,7 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._vlan_id1"]
+              "value" : ["scalars", "userMetadata._vlan_id9"]
             }
           ],
           "source_info" : {
@@ -4912,7 +5720,7 @@
     },
     {
       "name" : "FabricEgress.egress_next.push_inner_vlan",
-      "id" : 58,
+      "id" : 66,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -4939,7 +5747,7 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._inner_vlan_cfi7"]
+              "value" : ["scalars", "userMetadata._inner_vlan_cfi15"]
             }
           ],
           "source_info" : {
@@ -4958,7 +5766,7 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._inner_vlan_pri6"]
+              "value" : ["scalars", "userMetadata._inner_vlan_pri14"]
             }
           ],
           "source_info" : {
@@ -4977,7 +5785,7 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._inner_vlan_id5"]
+              "value" : ["scalars", "userMetadata._inner_vlan_id13"]
             }
           ],
           "source_info" : {
@@ -5001,7 +5809,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 129,
+            "line" : 146,
             "column" : 31,
             "source_fragment" : "0x8100; ..."
           }
@@ -5020,7 +5828,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 129,
+            "line" : 146,
             "column" : 31,
             "source_fragment" : "0x8100; ..."
           }
@@ -5029,7 +5837,7 @@
     },
     {
       "name" : "FabricEgress.egress_next.push_vlan",
-      "id" : 59,
+      "id" : 67,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -5056,7 +5864,7 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._vlan_cfi3"]
+              "value" : ["scalars", "userMetadata._vlan_cfi11"]
             }
           ],
           "source_info" : {
@@ -5075,7 +5883,7 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._vlan_pri2"]
+              "value" : ["scalars", "userMetadata._vlan_pri10"]
             }
           ],
           "source_info" : {
@@ -5099,7 +5907,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 129,
+            "line" : 146,
             "column" : 31,
             "source_fragment" : "0x8100; ..."
           }
@@ -5113,7 +5921,7 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "userMetadata._vlan_id1"]
+              "value" : ["scalars", "userMetadata._vlan_id9"]
             }
           ],
           "source_info" : {
@@ -5127,7 +5935,7 @@
     },
     {
       "name" : "FabricEgress.egress_next.pop_vlan",
-      "id" : 60,
+      "id" : 68,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -5149,7 +5957,7 @@
     },
     {
       "name" : "FabricEgress.egress_next.drop",
-      "id" : 61,
+      "id" : 69,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -5170,8 +5978,40 @@
       ]
     },
     {
+      "name" : "FabricEgress.dscp_rewriter.rewrite",
+      "id" : 70,
+      "runtime_data" : [],
+      "primitives" : []
+    },
+    {
+      "name" : "FabricEgress.dscp_rewriter.clear",
+      "id" : 71,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "dscp_rewriter_tmp_dscp"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/slicing.p4",
+            "line" : 135,
+            "column" : 8,
+            "source_fragment" : "tmp_dscp = 0"
+          }
+        }
+      ]
+    },
+    {
       "name" : "packetio41",
-      "id" : 62,
+      "id" : 72,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -5188,7 +6028,7 @@
     },
     {
       "name" : "packetio44",
-      "id" : 63,
+      "id" : 73,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -5239,7 +6079,7 @@
     },
     {
       "name" : "next283",
-      "id" : 64,
+      "id" : 74,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -5261,7 +6101,7 @@
     },
     {
       "name" : "next299",
-      "id" : 65,
+      "id" : 75,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -5283,7 +6123,7 @@
     },
     {
       "name" : "next310",
-      "id" : 66,
+      "id" : 76,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -5305,7 +6145,7 @@
     },
     {
       "name" : "next309",
-      "id" : 67,
+      "id" : 77,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -5354,7 +6194,7 @@
     },
     {
       "name" : "next314",
-      "id" : 68,
+      "id" : 78,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -5376,7 +6216,7 @@
     },
     {
       "name" : "next313",
-      "id" : 69,
+      "id" : 79,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -5422,6 +6262,58 @@
           }
         }
       ]
+    },
+    {
+      "name" : "slicing159",
+      "id" : 80,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["inner_ipv4", "dscp"]
+            },
+            {
+              "type" : "field",
+              "value" : ["scalars", "dscp_rewriter_tmp_dscp"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/slicing.p4",
+            "line" : 159,
+            "column" : 16,
+            "source_fragment" : "hdr.inner_ipv4.dscp = tmp_dscp"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "slicing126",
+      "id" : 81,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "dscp_rewriter_tmp_dscp"]
+            },
+            {
+              "type" : "field",
+              "value" : ["scalars", "userMetadata._dscp32"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/slicing.p4",
+            "line" : 126,
+            "column" : 4,
+            "source_fragment" : "bit<6> tmp_dscp = fabric_md.dscp; ..."
+          }
+        }
+      ]
     }
   ],
   "pipelines" : [
@@ -5430,16 +6322,277 @@
       "id" : 0,
       "source_info" : {
         "filename" : "fabric.p4",
-        "line" : 47,
+        "line" : 49,
         "column" : 8,
         "source_fragment" : "FabricIngress"
       },
-      "init_table" : "node_2",
+      "init_table" : "tbl_lookup_md_init23",
       "tables" : [
         {
-          "name" : "tbl_packetio25",
+          "name" : "tbl_lookup_md_init23",
           "id" : 0,
           "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 23,
+            "column" : 23,
+            "source_fragment" : "= false; ..."
+          },
+          "key" : [],
+          "match_type" : "exact",
+          "type" : "simple",
+          "max_size" : 1024,
+          "with_counters" : false,
+          "support_timeout" : false,
+          "direct_meters" : null,
+          "action_ids" : [48],
+          "actions" : ["lookup_md_init23"],
+          "base_default_next" : "node_3",
+          "next_tables" : {
+            "lookup_md_init23" : "node_3"
+          },
+          "default_entry" : {
+            "action_id" : 48,
+            "action_const" : true,
+            "action_data" : [],
+            "action_entry_const" : true
+          }
+        },
+        {
+          "name" : "tbl_lookup_md_init32",
+          "id" : 1,
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 32,
+            "column" : 27,
+            "source_fragment" : "= true; ..."
+          },
+          "key" : [],
+          "match_type" : "exact",
+          "type" : "simple",
+          "max_size" : 1024,
+          "with_counters" : false,
+          "support_timeout" : false,
+          "direct_meters" : null,
+          "action_ids" : [43],
+          "actions" : ["lookup_md_init32"],
+          "base_default_next" : "node_5",
+          "next_tables" : {
+            "lookup_md_init32" : "node_5"
+          },
+          "default_entry" : {
+            "action_id" : 43,
+            "action_const" : true,
+            "action_data" : [],
+            "action_entry_const" : true
+          }
+        },
+        {
+          "name" : "tbl_lookup_md_init37",
+          "id" : 2,
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 37,
+            "column" : 32,
+            "source_fragment" : "= hdr.inner_tcp.sport; ..."
+          },
+          "key" : [],
+          "match_type" : "exact",
+          "type" : "simple",
+          "max_size" : 1024,
+          "with_counters" : false,
+          "support_timeout" : false,
+          "direct_meters" : null,
+          "action_ids" : [40],
+          "actions" : ["lookup_md_init37"],
+          "base_default_next" : "node_19",
+          "next_tables" : {
+            "lookup_md_init37" : "node_19"
+          },
+          "default_entry" : {
+            "action_id" : 40,
+            "action_const" : true,
+            "action_data" : [],
+            "action_entry_const" : true
+          }
+        },
+        {
+          "name" : "tbl_lookup_md_init40",
+          "id" : 3,
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 40,
+            "column" : 32,
+            "source_fragment" : "= hdr.inner_udp.sport; ..."
+          },
+          "key" : [],
+          "match_type" : "exact",
+          "type" : "simple",
+          "max_size" : 1024,
+          "with_counters" : false,
+          "support_timeout" : false,
+          "direct_meters" : null,
+          "action_ids" : [41],
+          "actions" : ["lookup_md_init40"],
+          "base_default_next" : "node_19",
+          "next_tables" : {
+            "lookup_md_init40" : "node_19"
+          },
+          "default_entry" : {
+            "action_id" : 41,
+            "action_const" : true,
+            "action_data" : [],
+            "action_entry_const" : true
+          }
+        },
+        {
+          "name" : "tbl_lookup_md_init43",
+          "id" : 4,
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 43,
+            "column" : 33,
+            "source_fragment" : "= hdr.inner_icmp.icmp_type; ..."
+          },
+          "key" : [],
+          "match_type" : "exact",
+          "type" : "simple",
+          "max_size" : 1024,
+          "with_counters" : false,
+          "support_timeout" : false,
+          "direct_meters" : null,
+          "action_ids" : [42],
+          "actions" : ["lookup_md_init43"],
+          "base_default_next" : "node_19",
+          "next_tables" : {
+            "lookup_md_init43" : "node_19"
+          },
+          "default_entry" : {
+            "action_id" : 42,
+            "action_const" : true,
+            "action_data" : [],
+            "action_entry_const" : true
+          }
+        },
+        {
+          "name" : "tbl_lookup_md_init47",
+          "id" : 5,
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 47,
+            "column" : 27,
+            "source_fragment" : "= true; ..."
+          },
+          "key" : [],
+          "match_type" : "exact",
+          "type" : "simple",
+          "max_size" : 1024,
+          "with_counters" : false,
+          "support_timeout" : false,
+          "direct_meters" : null,
+          "action_ids" : [47],
+          "actions" : ["lookup_md_init47"],
+          "base_default_next" : "node_13",
+          "next_tables" : {
+            "lookup_md_init47" : "node_13"
+          },
+          "default_entry" : {
+            "action_id" : 47,
+            "action_const" : true,
+            "action_data" : [],
+            "action_entry_const" : true
+          }
+        },
+        {
+          "name" : "tbl_lookup_md_init52",
+          "id" : 6,
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 52,
+            "column" : 32,
+            "source_fragment" : "= hdr.tcp.sport; ..."
+          },
+          "key" : [],
+          "match_type" : "exact",
+          "type" : "simple",
+          "max_size" : 1024,
+          "with_counters" : false,
+          "support_timeout" : false,
+          "direct_meters" : null,
+          "action_ids" : [44],
+          "actions" : ["lookup_md_init52"],
+          "base_default_next" : "node_19",
+          "next_tables" : {
+            "lookup_md_init52" : "node_19"
+          },
+          "default_entry" : {
+            "action_id" : 44,
+            "action_const" : true,
+            "action_data" : [],
+            "action_entry_const" : true
+          }
+        },
+        {
+          "name" : "tbl_lookup_md_init55",
+          "id" : 7,
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 55,
+            "column" : 32,
+            "source_fragment" : "= hdr.udp.sport; ..."
+          },
+          "key" : [],
+          "match_type" : "exact",
+          "type" : "simple",
+          "max_size" : 1024,
+          "with_counters" : false,
+          "support_timeout" : false,
+          "direct_meters" : null,
+          "action_ids" : [45],
+          "actions" : ["lookup_md_init55"],
+          "base_default_next" : "node_19",
+          "next_tables" : {
+            "lookup_md_init55" : "node_19"
+          },
+          "default_entry" : {
+            "action_id" : 45,
+            "action_const" : true,
+            "action_data" : [],
+            "action_entry_const" : true
+          }
+        },
+        {
+          "name" : "tbl_lookup_md_init58",
+          "id" : 8,
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 58,
+            "column" : 33,
+            "source_fragment" : "= hdr.icmp.icmp_type; ..."
+          },
+          "key" : [],
+          "match_type" : "exact",
+          "type" : "simple",
+          "max_size" : 1024,
+          "with_counters" : false,
+          "support_timeout" : false,
+          "direct_meters" : null,
+          "action_ids" : [46],
+          "actions" : ["lookup_md_init58"],
+          "base_default_next" : "node_19",
+          "next_tables" : {
+            "lookup_md_init58" : "node_19"
+          },
+          "default_entry" : {
+            "action_id" : 46,
+            "action_const" : true,
+            "action_data" : [],
+            "action_entry_const" : true
+          }
+        },
+        {
+          "name" : "tbl_packetio25",
+          "id" : 9,
+          "source_info" : {
             "filename" : "include/control/packetio.p4",
             "line" : 25,
             "column" : 42,
@@ -5452,22 +6605,89 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [36],
+          "action_ids" : [49],
           "actions" : ["packetio25"],
-          "base_default_next" : "node_4",
+          "base_default_next" : "FabricIngress.slice_tc_classifier.classifier",
           "next_tables" : {
-            "packetio25" : "node_4"
+            "packetio25" : "FabricIngress.slice_tc_classifier.classifier"
           },
           "default_entry" : {
-            "action_id" : 36,
+            "action_id" : 49,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
           }
         },
         {
+          "name" : "FabricIngress.slice_tc_classifier.classifier",
+          "id" : 10,
+          "source_info" : {
+            "filename" : "include/control/slicing.p4",
+            "line" : 49,
+            "column" : 10,
+            "source_fragment" : "classifier"
+          },
+          "key" : [
+            {
+              "match_type" : "ternary",
+              "name" : "ig_port",
+              "target" : ["standard_metadata", "ingress_port"],
+              "mask" : null
+            },
+            {
+              "match_type" : "ternary",
+              "name" : "ipv4_src",
+              "target" : ["scalars", "userMetadata._lkp_ipv4_src1"],
+              "mask" : null
+            },
+            {
+              "match_type" : "ternary",
+              "name" : "ipv4_dst",
+              "target" : ["scalars", "userMetadata._lkp_ipv4_dst2"],
+              "mask" : null
+            },
+            {
+              "match_type" : "ternary",
+              "name" : "ip_proto",
+              "target" : ["scalars", "userMetadata._lkp_ip_proto3"],
+              "mask" : null
+            },
+            {
+              "match_type" : "ternary",
+              "name" : "l4_sport",
+              "target" : ["scalars", "userMetadata._lkp_l4_sport4"],
+              "mask" : null
+            },
+            {
+              "match_type" : "ternary",
+              "name" : "l4_dport",
+              "target" : ["scalars", "userMetadata._lkp_l4_dport5"],
+              "mask" : null
+            }
+          ],
+          "match_type" : "ternary",
+          "type" : "simple",
+          "max_size" : 512,
+          "with_counters" : true,
+          "support_timeout" : false,
+          "direct_meters" : null,
+          "action_ids" : [36, 37],
+          "actions" : ["FabricIngress.slice_tc_classifier.set_slice_id_tc", "FabricIngress.slice_tc_classifier.trust_dscp"],
+          "base_default_next" : "node_22",
+          "next_tables" : {
+            "FabricIngress.slice_tc_classifier.set_slice_id_tc" : "node_22",
+            "FabricIngress.slice_tc_classifier.trust_dscp" : "node_22"
+          },
+          "default_entry" : {
+            "action_id" : 36,
+            "action_const" : true,
+            "action_data" : ["0x0", "0x0"],
+            "action_entry_const" : true
+          }
+        },
+        {
           "name" : "tbl_filtering113",
-          "id" : 1,
+          "id" : 11,
           "source_info" : {
             "filename" : "include/control/filtering.p4",
             "line" : 113,
@@ -5481,14 +6701,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [37],
+          "action_ids" : [50],
           "actions" : ["filtering113"],
-          "base_default_next" : "node_6",
+          "base_default_next" : "node_24",
           "next_tables" : {
-            "filtering113" : "node_6"
+            "filtering113" : "node_24"
           },
           "default_entry" : {
-            "action_id" : 37,
+            "action_id" : 50,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -5496,7 +6716,7 @@
         },
         {
           "name" : "tbl_filtering119",
-          "id" : 2,
+          "id" : 12,
           "source_info" : {
             "filename" : "include/control/filtering.p4",
             "line" : 119,
@@ -5510,14 +6730,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [38],
+          "action_ids" : [51],
           "actions" : ["filtering119"],
-          "base_default_next" : "node_8",
+          "base_default_next" : "node_26",
           "next_tables" : {
-            "filtering119" : "node_8"
+            "filtering119" : "node_26"
           },
           "default_entry" : {
-            "action_id" : 38,
+            "action_id" : 51,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -5525,7 +6745,7 @@
         },
         {
           "name" : "tbl_filtering129",
-          "id" : 3,
+          "id" : 13,
           "source_info" : {
             "filename" : "include/control/filtering.p4",
             "line" : 129,
@@ -5539,14 +6759,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [39],
+          "action_ids" : [52],
           "actions" : ["filtering129"],
           "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
           "next_tables" : {
             "filtering129" : "FabricIngress.filtering.ingress_port_vlan"
           },
           "default_entry" : {
-            "action_id" : 39,
+            "action_id" : 52,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -5554,7 +6774,7 @@
         },
         {
           "name" : "FabricIngress.filtering.ingress_port_vlan",
-          "id" : 4,
+          "id" : 14,
           "source_info" : {
             "filename" : "include/control/filtering.p4",
             "line" : 55,
@@ -5610,7 +6830,7 @@
         },
         {
           "name" : "FabricIngress.filtering.fwd_classifier",
-          "id" : 5,
+          "id" : 15,
           "source_info" : {
             "filename" : "include/control/filtering.p4",
             "line" : 94,
@@ -5639,7 +6859,7 @@
             {
               "match_type" : "exact",
               "name" : "ip_eth_type",
-              "target" : ["scalars", "userMetadata._ip_eth_type0"],
+              "target" : ["scalars", "userMetadata._ip_eth_type8"],
               "mask" : null
             }
           ],
@@ -5651,9 +6871,9 @@
           "direct_meters" : null,
           "action_ids" : [20],
           "actions" : ["FabricIngress.filtering.set_forwarding_type"],
-          "base_default_next" : "node_12",
+          "base_default_next" : "node_30",
           "next_tables" : {
-            "FabricIngress.filtering.set_forwarding_type" : "node_12"
+            "FabricIngress.filtering.set_forwarding_type" : "node_30"
           },
           "default_entry" : {
             "action_id" : 20,
@@ -5664,7 +6884,7 @@
         },
         {
           "name" : "FabricIngress.forwarding.bridging",
-          "id" : 6,
+          "id" : 16,
           "source_info" : {
             "filename" : "include/control/forwarding.p4",
             "line" : 46,
@@ -5675,7 +6895,7 @@
             {
               "match_type" : "exact",
               "name" : "vlan_id",
-              "target" : ["scalars", "userMetadata._vlan_id1"],
+              "target" : ["scalars", "userMetadata._vlan_id9"],
               "mask" : null
             },
             {
@@ -5693,10 +6913,10 @@
           "direct_meters" : null,
           "action_ids" : [21, 2],
           "actions" : ["FabricIngress.forwarding.set_next_id_bridging", "nop"],
-          "base_default_next" : "node_19",
+          "base_default_next" : "node_37",
           "next_tables" : {
-            "FabricIngress.forwarding.set_next_id_bridging" : "node_19",
-            "nop" : "node_19"
+            "FabricIngress.forwarding.set_next_id_bridging" : "node_37",
+            "nop" : "node_37"
           },
           "default_entry" : {
             "action_id" : 2,
@@ -5707,7 +6927,7 @@
         },
         {
           "name" : "FabricIngress.forwarding.mpls",
-          "id" : 7,
+          "id" : 17,
           "source_info" : {
             "filename" : "include/control/forwarding.p4",
             "line" : 71,
@@ -5718,7 +6938,7 @@
             {
               "match_type" : "exact",
               "name" : "mpls_label",
-              "target" : ["scalars", "userMetadata._mpls_label8"],
+              "target" : ["scalars", "userMetadata._mpls_label16"],
               "mask" : null
             }
           ],
@@ -5730,10 +6950,10 @@
           "direct_meters" : null,
           "action_ids" : [22, 3],
           "actions" : ["FabricIngress.forwarding.pop_mpls_and_next", "nop"],
-          "base_default_next" : "node_19",
+          "base_default_next" : "node_37",
           "next_tables" : {
-            "FabricIngress.forwarding.pop_mpls_and_next" : "node_19",
-            "nop" : "node_19"
+            "FabricIngress.forwarding.pop_mpls_and_next" : "node_37",
+            "nop" : "node_37"
           },
           "default_entry" : {
             "action_id" : 3,
@@ -5744,7 +6964,7 @@
         },
         {
           "name" : "FabricIngress.forwarding.routing_v4",
-          "id" : 8,
+          "id" : 18,
           "source_info" : {
             "filename" : "include/control/forwarding.p4",
             "line" : 108,
@@ -5755,7 +6975,7 @@
             {
               "match_type" : "lpm",
               "name" : "ipv4_dst",
-              "target" : ["scalars", "userMetadata._ipv4_dst_addr20"],
+              "target" : ["scalars", "userMetadata._ipv4_dst_addr28"],
               "mask" : null
             }
           ],
@@ -5767,11 +6987,11 @@
           "direct_meters" : null,
           "action_ids" : [23, 24, 4],
           "actions" : ["FabricIngress.forwarding.set_next_id_routing_v4", "FabricIngress.forwarding.nop_routing_v4", "nop"],
-          "base_default_next" : "node_19",
+          "base_default_next" : "node_37",
           "next_tables" : {
-            "FabricIngress.forwarding.set_next_id_routing_v4" : "node_19",
-            "FabricIngress.forwarding.nop_routing_v4" : "node_19",
-            "nop" : "node_19"
+            "FabricIngress.forwarding.set_next_id_routing_v4" : "node_37",
+            "FabricIngress.forwarding.nop_routing_v4" : "node_37",
+            "nop" : "node_37"
           },
           "default_entry" : {
             "action_id" : 4,
@@ -5782,7 +7002,7 @@
         },
         {
           "name" : "FabricIngress.pre_next.next_mpls",
-          "id" : 9,
+          "id" : 19,
           "source_info" : {
             "filename" : "include/control/pre_next.p4",
             "line" : 36,
@@ -5793,7 +7013,7 @@
             {
               "match_type" : "exact",
               "name" : "next_id",
-              "target" : ["scalars", "userMetadata._next_id13"],
+              "target" : ["scalars", "userMetadata._next_id21"],
               "mask" : null
             }
           ],
@@ -5819,7 +7039,7 @@
         },
         {
           "name" : "FabricIngress.pre_next.next_vlan",
-          "id" : 10,
+          "id" : 20,
           "source_info" : {
             "filename" : "include/control/pre_next.p4",
             "line" : 73,
@@ -5830,7 +7050,7 @@
             {
               "match_type" : "exact",
               "name" : "next_id",
-              "target" : ["scalars", "userMetadata._next_id13"],
+              "target" : ["scalars", "userMetadata._next_id21"],
               "mask" : null
             }
           ],
@@ -5842,11 +7062,11 @@
           "direct_meters" : null,
           "action_ids" : [26, 27, 6],
           "actions" : ["FabricIngress.pre_next.set_vlan", "FabricIngress.pre_next.set_double_vlan", "nop"],
-          "base_default_next" : "tbl_acl27",
+          "base_default_next" : "FabricIngress.acl.acl",
           "next_tables" : {
-            "FabricIngress.pre_next.set_vlan" : "tbl_acl27",
-            "FabricIngress.pre_next.set_double_vlan" : "tbl_acl27",
-            "nop" : "tbl_acl27"
+            "FabricIngress.pre_next.set_vlan" : "FabricIngress.acl.acl",
+            "FabricIngress.pre_next.set_double_vlan" : "FabricIngress.acl.acl",
+            "nop" : "FabricIngress.acl.acl"
           },
           "default_entry" : {
             "action_id" : 6,
@@ -5856,214 +7076,11 @@
           }
         },
         {
-          "name" : "tbl_acl27",
-          "id" : 11,
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 27,
-            "column" : 4,
-            "source_fragment" : "ipv4_addr_t ipv4_src = 0; ..."
-          },
-          "key" : [],
-          "match_type" : "exact",
-          "type" : "simple",
-          "max_size" : 1024,
-          "with_counters" : false,
-          "support_timeout" : false,
-          "direct_meters" : null,
-          "action_ids" : [46],
-          "actions" : ["acl27"],
-          "base_default_next" : "node_23",
-          "next_tables" : {
-            "acl27" : "node_23"
-          },
-          "default_entry" : {
-            "action_id" : 46,
-            "action_const" : true,
-            "action_data" : [],
-            "action_entry_const" : true
-          }
-        },
-        {
-          "name" : "tbl_acl98",
-          "id" : 12,
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 98,
-            "column" : 21,
-            "source_fragment" : "= hdr.inner_ipv4.src_addr; ..."
-          },
-          "key" : [],
-          "match_type" : "exact",
-          "type" : "simple",
-          "max_size" : 1024,
-          "with_counters" : false,
-          "support_timeout" : false,
-          "direct_meters" : null,
-          "action_ids" : [42],
-          "actions" : ["acl98"],
-          "base_default_next" : "node_25",
-          "next_tables" : {
-            "acl98" : "node_25"
-          },
-          "default_entry" : {
-            "action_id" : 42,
-            "action_const" : true,
-            "action_data" : [],
-            "action_entry_const" : true
-          }
-        },
-        {
-          "name" : "tbl_acl102",
-          "id" : 13,
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 102,
-            "column" : 25,
-            "source_fragment" : "= hdr.inner_tcp.sport; ..."
-          },
-          "key" : [],
-          "match_type" : "exact",
-          "type" : "simple",
-          "max_size" : 1024,
-          "with_counters" : false,
-          "support_timeout" : false,
-          "direct_meters" : null,
-          "action_ids" : [40],
-          "actions" : ["acl102"],
-          "base_default_next" : "FabricIngress.acl.acl",
-          "next_tables" : {
-            "acl102" : "FabricIngress.acl.acl"
-          },
-          "default_entry" : {
-            "action_id" : 40,
-            "action_const" : true,
-            "action_data" : [],
-            "action_entry_const" : true
-          }
-        },
-        {
-          "name" : "tbl_acl105",
-          "id" : 14,
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 105,
-            "column" : 25,
-            "source_fragment" : "= hdr.inner_udp.sport; ..."
-          },
-          "key" : [],
-          "match_type" : "exact",
-          "type" : "simple",
-          "max_size" : 1024,
-          "with_counters" : false,
-          "support_timeout" : false,
-          "direct_meters" : null,
-          "action_ids" : [41],
-          "actions" : ["acl105"],
-          "base_default_next" : "FabricIngress.acl.acl",
-          "next_tables" : {
-            "acl105" : "FabricIngress.acl.acl"
-          },
-          "default_entry" : {
-            "action_id" : 41,
-            "action_const" : true,
-            "action_data" : [],
-            "action_entry_const" : true
-          }
-        },
-        {
-          "name" : "tbl_acl109",
-          "id" : 15,
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 109,
-            "column" : 21,
-            "source_fragment" : "= hdr.ipv4.src_addr; ..."
-          },
-          "key" : [],
-          "match_type" : "exact",
-          "type" : "simple",
-          "max_size" : 1024,
-          "with_counters" : false,
-          "support_timeout" : false,
-          "direct_meters" : null,
-          "action_ids" : [45],
-          "actions" : ["acl109"],
-          "base_default_next" : "node_31",
-          "next_tables" : {
-            "acl109" : "node_31"
-          },
-          "default_entry" : {
-            "action_id" : 45,
-            "action_const" : true,
-            "action_data" : [],
-            "action_entry_const" : true
-          }
-        },
-        {
-          "name" : "tbl_acl113",
-          "id" : 16,
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 113,
-            "column" : 25,
-            "source_fragment" : "= hdr.tcp.sport; ..."
-          },
-          "key" : [],
-          "match_type" : "exact",
-          "type" : "simple",
-          "max_size" : 1024,
-          "with_counters" : false,
-          "support_timeout" : false,
-          "direct_meters" : null,
-          "action_ids" : [43],
-          "actions" : ["acl113"],
-          "base_default_next" : "FabricIngress.acl.acl",
-          "next_tables" : {
-            "acl113" : "FabricIngress.acl.acl"
-          },
-          "default_entry" : {
-            "action_id" : 43,
-            "action_const" : true,
-            "action_data" : [],
-            "action_entry_const" : true
-          }
-        },
-        {
-          "name" : "tbl_acl116",
-          "id" : 17,
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 116,
-            "column" : 25,
-            "source_fragment" : "= hdr.udp.sport; ..."
-          },
-          "key" : [],
-          "match_type" : "exact",
-          "type" : "simple",
-          "max_size" : 1024,
-          "with_counters" : false,
-          "support_timeout" : false,
-          "direct_meters" : null,
-          "action_ids" : [44],
-          "actions" : ["acl116"],
-          "base_default_next" : "FabricIngress.acl.acl",
-          "next_tables" : {
-            "acl116" : "FabricIngress.acl.acl"
-          },
-          "default_entry" : {
-            "action_id" : 44,
-            "action_const" : true,
-            "action_data" : [],
-            "action_entry_const" : true
-          }
-        },
-        {
           "name" : "FabricIngress.acl.acl",
-          "id" : 18,
+          "id" : 21,
           "source_info" : {
             "filename" : "include/control/acl.p4",
-            "line" : 66,
+            "line" : 59,
             "column" : 10,
             "source_fragment" : "acl"
           },
@@ -6101,19 +7118,19 @@
             {
               "match_type" : "ternary",
               "name" : "ipv4_src",
-              "target" : ["scalars", "acl_ipv4_src"],
+              "target" : ["scalars", "userMetadata._lkp_ipv4_src1"],
               "mask" : null
             },
             {
               "match_type" : "ternary",
               "name" : "ipv4_dst",
-              "target" : ["scalars", "acl_ipv4_dst"],
+              "target" : ["scalars", "userMetadata._lkp_ipv4_dst2"],
               "mask" : null
             },
             {
               "match_type" : "ternary",
               "name" : "ip_proto",
-              "target" : ["scalars", "acl_ip_proto"],
+              "target" : ["scalars", "userMetadata._lkp_ip_proto3"],
               "mask" : null
             },
             {
@@ -6131,19 +7148,19 @@
             {
               "match_type" : "ternary",
               "name" : "l4_sport",
-              "target" : ["scalars", "acl_l4_sport"],
+              "target" : ["scalars", "userMetadata._lkp_l4_sport4"],
               "mask" : null
             },
             {
               "match_type" : "ternary",
               "name" : "l4_dport",
-              "target" : ["scalars", "acl_l4_dport"],
+              "target" : ["scalars", "userMetadata._lkp_l4_dport5"],
               "mask" : null
             },
             {
               "match_type" : "ternary",
               "name" : "port_type",
-              "target" : ["scalars", "userMetadata._port_type27"],
+              "target" : ["scalars", "userMetadata._port_type39"],
               "mask" : null
             }
           ],
@@ -6155,13 +7172,13 @@
           "direct_meters" : null,
           "action_ids" : [28, 29, 30, 31, 32],
           "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_36",
+          "base_default_next" : "node_41",
           "next_tables" : {
-            "FabricIngress.acl.set_next_id_acl" : "node_36",
-            "FabricIngress.acl.punt_to_cpu" : "node_36",
-            "FabricIngress.acl.set_clone_session_id" : "node_36",
-            "FabricIngress.acl.drop" : "node_36",
-            "FabricIngress.acl.nop_acl" : "node_36"
+            "FabricIngress.acl.set_next_id_acl" : "node_41",
+            "FabricIngress.acl.punt_to_cpu" : "node_41",
+            "FabricIngress.acl.set_clone_session_id" : "node_41",
+            "FabricIngress.acl.drop" : "node_41",
+            "FabricIngress.acl.nop_acl" : "node_41"
           },
           "default_entry" : {
             "action_id" : 32,
@@ -6172,7 +7189,7 @@
         },
         {
           "name" : "FabricIngress.next.hashed",
-          "id" : 19,
+          "id" : 22,
           "source_info" : {
             "filename" : "include/control/next.p4",
             "line" : 138,
@@ -6183,7 +7200,7 @@
             {
               "match_type" : "exact",
               "name" : "next_id",
-              "target" : ["scalars", "userMetadata._next_id13"],
+              "target" : ["scalars", "userMetadata._next_id21"],
               "mask" : null
             }
           ],
@@ -6205,7 +7222,7 @@
         },
         {
           "name" : "FabricIngress.next.multicast",
-          "id" : 20,
+          "id" : 23,
           "source_info" : {
             "filename" : "include/control/next.p4",
             "line" : 171,
@@ -6216,7 +7233,7 @@
             {
               "match_type" : "exact",
               "name" : "next_id",
-              "target" : ["scalars", "userMetadata._next_id13"],
+              "target" : ["scalars", "userMetadata._next_id21"],
               "mask" : null
             }
           ],
@@ -6228,10 +7245,10 @@
           "direct_meters" : null,
           "action_ids" : [35, 8],
           "actions" : ["FabricIngress.next.set_mcast_group_id", "nop"],
-          "base_default_next" : "node_39",
+          "base_default_next" : "node_44",
           "next_tables" : {
-            "FabricIngress.next.set_mcast_group_id" : "node_39",
-            "nop" : "node_39"
+            "FabricIngress.next.set_mcast_group_id" : "node_44",
+            "nop" : "node_44"
           },
           "default_entry" : {
             "action_id" : 8,
@@ -6242,7 +7259,7 @@
         },
         {
           "name" : "tbl_port_counter31",
-          "id" : 21,
+          "id" : 24,
           "source_info" : {
             "filename" : "include/control/port_counter.p4",
             "line" : 31,
@@ -6256,14 +7273,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [47],
+          "action_ids" : [53],
           "actions" : ["port_counter31"],
-          "base_default_next" : "node_41",
+          "base_default_next" : "node_46",
           "next_tables" : {
-            "port_counter31" : "node_41"
+            "port_counter31" : "node_46"
           },
           "default_entry" : {
-            "action_id" : 47,
+            "action_id" : 53,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -6271,7 +7288,7 @@
         },
         {
           "name" : "tbl_port_counter34",
-          "id" : 22,
+          "id" : 25,
           "source_info" : {
             "filename" : "include/control/port_counter.p4",
             "line" : 34,
@@ -6285,14 +7302,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [48],
+          "action_ids" : [54],
           "actions" : ["port_counter34"],
           "base_default_next" : "FabricIngress.bng_ingress.t_line_map",
           "next_tables" : {
             "port_counter34" : "FabricIngress.bng_ingress.t_line_map"
           },
           "default_entry" : {
-            "action_id" : 48,
+            "action_id" : 54,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -6300,7 +7317,7 @@
         },
         {
           "name" : "FabricIngress.bng_ingress.t_line_map",
-          "id" : 23,
+          "id" : 26,
           "source_info" : {
             "filename" : "include/bng.p4",
             "line" : 323,
@@ -6311,13 +7328,13 @@
             {
               "match_type" : "exact",
               "name" : "s_tag",
-              "target" : ["scalars", "userMetadata._bng_s_tag25"],
+              "target" : ["scalars", "userMetadata._bng_s_tag37"],
               "mask" : null
             },
             {
               "match_type" : "exact",
               "name" : "c_tag",
-              "target" : ["scalars", "userMetadata._bng_c_tag26"],
+              "target" : ["scalars", "userMetadata._bng_c_tag38"],
               "mask" : null
             }
           ],
@@ -6329,9 +7346,9 @@
           "direct_meters" : null,
           "action_ids" : [16],
           "actions" : ["FabricIngress.bng_ingress.set_line"],
-          "base_default_next" : "node_44",
+          "base_default_next" : "node_49",
           "next_tables" : {
-            "FabricIngress.bng_ingress.set_line" : "node_44"
+            "FabricIngress.bng_ingress.set_line" : "node_49"
           },
           "default_entry" : {
             "action_id" : 16,
@@ -6342,7 +7359,7 @@
         },
         {
           "name" : "tbl_bng342",
-          "id" : 24,
+          "id" : 27,
           "source_info" : {
             "filename" : "include/bng.p4",
             "line" : 342,
@@ -6356,14 +7373,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [50],
+          "action_ids" : [56],
           "actions" : ["bng342"],
           "base_default_next" : "FabricIngress.bng_ingress.upstream.t_pppoe_cp",
           "next_tables" : {
             "bng342" : "FabricIngress.bng_ingress.upstream.t_pppoe_cp"
           },
           "default_entry" : {
-            "action_id" : 50,
+            "action_id" : 56,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -6371,7 +7388,7 @@
         },
         {
           "name" : "FabricIngress.bng_ingress.upstream.t_pppoe_cp",
-          "id" : 25,
+          "id" : 28,
           "source_info" : {
             "filename" : "include/bng.p4",
             "line" : 51,
@@ -6403,7 +7420,7 @@
           "base_default_next" : null,
           "next_tables" : {
             "__HIT__" : "tbl_bng126",
-            "__MISS__" : "node_48"
+            "__MISS__" : "node_53"
           },
           "default_entry" : {
             "action_id" : 0,
@@ -6414,7 +7431,7 @@
         },
         {
           "name" : "tbl_bng126",
-          "id" : 26,
+          "id" : 29,
           "source_info" : {
             "filename" : "include/bng.p4",
             "line" : 126,
@@ -6428,14 +7445,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [49],
+          "action_ids" : [55],
           "actions" : ["bng126"],
-          "base_default_next" : "node_48",
+          "base_default_next" : "node_53",
           "next_tables" : {
-            "bng126" : "node_48"
+            "bng126" : "node_53"
           },
           "default_entry" : {
-            "action_id" : 49,
+            "action_id" : 55,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -6443,7 +7460,7 @@
         },
         {
           "name" : "FabricIngress.bng_ingress.upstream.t_pppoe_term_v4",
-          "id" : 27,
+          "id" : 30,
           "source_info" : {
             "filename" : "include/bng.p4",
             "line" : 87,
@@ -6454,7 +7471,7 @@
             {
               "match_type" : "exact",
               "name" : "line_id",
-              "target" : ["scalars", "userMetadata._bng_line_id22"],
+              "target" : ["scalars", "userMetadata._bng_line_id34"],
               "mask" : null
             },
             {
@@ -6478,10 +7495,10 @@
           "direct_meters" : null,
           "action_ids" : [11, 10],
           "actions" : ["FabricIngress.bng_ingress.upstream.term_enabled_v4", "FabricIngress.bng_ingress.upstream.term_disabled"],
-          "base_default_next" : null,
+          "base_default_next" : "tbl_slicing114",
           "next_tables" : {
             "FabricIngress.bng_ingress.upstream.term_disabled" : "tbl_bng131",
-            "FabricIngress.bng_ingress.upstream.term_enabled_v4" : null
+            "FabricIngress.bng_ingress.upstream.term_enabled_v4" : "tbl_slicing114"
           },
           "default_entry" : {
             "action_id" : 10,
@@ -6492,7 +7509,7 @@
         },
         {
           "name" : "tbl_bng131",
-          "id" : 28,
+          "id" : 31,
           "source_info" : {
             "filename" : "include/bng.p4",
             "line" : 131,
@@ -6506,14 +7523,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [51],
+          "action_ids" : [57],
           "actions" : ["bng131"],
-          "base_default_next" : null,
+          "base_default_next" : "tbl_slicing114",
           "next_tables" : {
-            "bng131" : null
+            "bng131" : "tbl_slicing114"
           },
           "default_entry" : {
-            "action_id" : 51,
+            "action_id" : 57,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -6521,7 +7538,7 @@
         },
         {
           "name" : "FabricIngress.bng_ingress.downstream.t_line_session_map",
-          "id" : 29,
+          "id" : 32,
           "source_info" : {
             "filename" : "include/bng.p4",
             "line" : 169,
@@ -6532,7 +7549,7 @@
             {
               "match_type" : "exact",
               "name" : "line_id",
-              "target" : ["scalars", "userMetadata._bng_line_id22"],
+              "target" : ["scalars", "userMetadata._bng_line_id34"],
               "mask" : null
             }
           ],
@@ -6546,8 +7563,8 @@
           "actions" : ["nop", "FabricIngress.bng_ingress.downstream.set_session", "FabricIngress.bng_ingress.downstream.drop"],
           "base_default_next" : null,
           "next_tables" : {
-            "__MISS__" : null,
-            "__HIT__" : "node_53"
+            "__HIT__" : "node_58",
+            "__MISS__" : "tbl_slicing114"
           },
           "default_entry" : {
             "action_id" : 1,
@@ -6558,7 +7575,7 @@
         },
         {
           "name" : "FabricIngress.bng_ingress.downstream.t_qos_v4",
-          "id" : 30,
+          "id" : 33,
           "source_info" : {
             "filename" : "include/bng.p4",
             "line" : 194,
@@ -6569,7 +7586,7 @@
             {
               "match_type" : "ternary",
               "name" : "line_id",
-              "target" : ["scalars", "userMetadata._bng_line_id22"],
+              "target" : ["scalars", "userMetadata._bng_line_id34"],
               "mask" : null
             },
             {
@@ -6599,7 +7616,7 @@
           "direct_meters" : null,
           "action_ids" : [14, 15],
           "actions" : ["FabricIngress.bng_ingress.downstream.qos_prio", "FabricIngress.bng_ingress.downstream.qos_besteff"],
-          "base_default_next" : null,
+          "base_default_next" : "tbl_slicing114",
           "next_tables" : {
             "FabricIngress.bng_ingress.downstream.qos_prio" : "tbl_bng238",
             "FabricIngress.bng_ingress.downstream.qos_besteff" : "tbl_bng241"
@@ -6613,7 +7630,7 @@
         },
         {
           "name" : "tbl_bng238",
-          "id" : 31,
+          "id" : 34,
           "source_info" : {
             "filename" : "include/bng.p4",
             "line" : 238,
@@ -6627,14 +7644,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [52],
+          "action_ids" : [58],
           "actions" : ["bng238"],
-          "base_default_next" : null,
+          "base_default_next" : "tbl_slicing114",
           "next_tables" : {
-            "bng238" : null
+            "bng238" : "tbl_slicing114"
           },
           "default_entry" : {
-            "action_id" : 52,
+            "action_id" : 58,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -6642,7 +7659,7 @@
         },
         {
           "name" : "tbl_bng241",
-          "id" : 32,
+          "id" : 35,
           "source_info" : {
             "filename" : "include/bng.p4",
             "line" : 241,
@@ -6656,18 +7673,96 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [53],
+          "action_ids" : [59],
           "actions" : ["bng241"],
-          "base_default_next" : null,
+          "base_default_next" : "tbl_slicing114",
           "next_tables" : {
-            "bng241" : null
+            "bng241" : "tbl_slicing114"
           },
           "default_entry" : {
-            "action_id" : 53,
+            "action_id" : 59,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
           }
+        },
+        {
+          "name" : "tbl_slicing114",
+          "id" : 36,
+          "source_info" : {
+            "filename" : "include/control/slicing.p4",
+            "line" : 114,
+            "column" : 8,
+            "source_fragment" : "slice_tc_meter.execute_meter((bit<32>) slice_tc, fabric_md.packet_color); ..."
+          },
+          "key" : [],
+          "match_type" : "exact",
+          "type" : "simple",
+          "max_size" : 1024,
+          "with_counters" : false,
+          "support_timeout" : false,
+          "direct_meters" : null,
+          "action_ids" : [60],
+          "actions" : ["slicing114"],
+          "base_default_next" : "FabricIngress.qos.queues",
+          "next_tables" : {
+            "slicing114" : "FabricIngress.qos.queues"
+          },
+          "default_entry" : {
+            "action_id" : 60,
+            "action_const" : true,
+            "action_data" : [],
+            "action_entry_const" : true
+          }
+        },
+        {
+          "name" : "FabricIngress.qos.queues",
+          "id" : 37,
+          "source_info" : {
+            "filename" : "include/control/slicing.p4",
+            "line" : 93,
+            "column" : 10,
+            "source_fragment" : "queues"
+          },
+          "key" : [
+            {
+              "match_type" : "exact",
+              "name" : "slice_id",
+              "target" : ["scalars", "userMetadata._slice_id29"],
+              "mask" : null
+            },
+            {
+              "match_type" : "exact",
+              "name" : "tc",
+              "target" : ["scalars", "userMetadata._tc31"],
+              "mask" : null
+            },
+            {
+              "match_type" : "ternary",
+              "name" : "color",
+              "target" : ["scalars", "userMetadata._packet_color30"],
+              "mask" : null
+            }
+          ],
+          "match_type" : "ternary",
+          "type" : "simple",
+          "max_size" : 128,
+          "with_counters" : true,
+          "support_timeout" : false,
+          "direct_meters" : null,
+          "action_ids" : [38, 39],
+          "actions" : ["FabricIngress.qos.set_queue", "FabricIngress.qos.meter_drop"],
+          "base_default_next" : null,
+          "next_tables" : {
+            "FabricIngress.qos.set_queue" : null,
+            "FabricIngress.qos.meter_drop" : null
+          },
+          "default_entry" : {
+            "action_id" : 38,
+            "action_const" : true,
+            "action_data" : ["0x0"],
+            "action_entry_const" : true
+          }
         }
       ],
       "action_profiles" : [
@@ -6686,23 +7781,23 @@
             "input" : [
               {
                 "type" : "field",
-                "value" : ["scalars", "userMetadata._ipv4_src_addr19"]
+                "value" : ["scalars", "userMetadata._ipv4_src_addr27"]
               },
               {
                 "type" : "field",
-                "value" : ["scalars", "userMetadata._ipv4_dst_addr20"]
+                "value" : ["scalars", "userMetadata._ipv4_dst_addr28"]
               },
               {
                 "type" : "field",
-                "value" : ["scalars", "userMetadata._ip_proto16"]
+                "value" : ["scalars", "userMetadata._ip_proto24"]
               },
               {
                 "type" : "field",
-                "value" : ["scalars", "userMetadata._l4_sport17"]
+                "value" : ["scalars", "userMetadata._l4_sport25"]
               },
               {
                 "type" : "field",
-                "value" : ["scalars", "userMetadata._l4_dport18"]
+                "value" : ["scalars", "userMetadata._l4_dport26"]
               }
             ]
           }
@@ -6710,9 +7805,193 @@
       ],
       "conditionals" : [
         {
-          "name" : "node_2",
+          "name" : "node_3",
           "id" : 0,
           "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 31,
+            "column" : 12,
+            "source_fragment" : "hdr.inner_ipv4.isValid()"
+          },
+          "expression" : {
+            "type" : "expression",
+            "value" : {
+              "op" : "d2b",
+              "left" : null,
+              "right" : {
+                "type" : "field",
+                "value" : ["inner_ipv4", "$valid$"]
+              }
+            }
+          },
+          "true_next" : "tbl_lookup_md_init32",
+          "false_next" : "node_11"
+        },
+        {
+          "name" : "node_5",
+          "id" : 1,
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 36,
+            "column" : 16,
+            "source_fragment" : "hdr.inner_tcp.isValid()"
+          },
+          "expression" : {
+            "type" : "expression",
+            "value" : {
+              "op" : "d2b",
+              "left" : null,
+              "right" : {
+                "type" : "field",
+                "value" : ["inner_tcp", "$valid$"]
+              }
+            }
+          },
+          "true_next" : "tbl_lookup_md_init37",
+          "false_next" : "node_7"
+        },
+        {
+          "name" : "node_7",
+          "id" : 2,
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 39,
+            "column" : 23,
+            "source_fragment" : "hdr.inner_udp.isValid()"
+          },
+          "expression" : {
+            "type" : "expression",
+            "value" : {
+              "op" : "d2b",
+              "left" : null,
+              "right" : {
+                "type" : "field",
+                "value" : ["inner_udp", "$valid$"]
+              }
+            }
+          },
+          "true_next" : "tbl_lookup_md_init40",
+          "false_next" : "node_9"
+        },
+        {
+          "name" : "node_9",
+          "id" : 3,
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 42,
+            "column" : 23,
+            "source_fragment" : "hdr.inner_icmp.isValid()"
+          },
+          "expression" : {
+            "type" : "expression",
+            "value" : {
+              "op" : "d2b",
+              "left" : null,
+              "right" : {
+                "type" : "field",
+                "value" : ["inner_icmp", "$valid$"]
+              }
+            }
+          },
+          "true_next" : "tbl_lookup_md_init43",
+          "false_next" : "node_19"
+        },
+        {
+          "name" : "node_11",
+          "id" : 4,
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 46,
+            "column" : 19,
+            "source_fragment" : "hdr.ipv4.isValid()"
+          },
+          "expression" : {
+            "type" : "expression",
+            "value" : {
+              "op" : "d2b",
+              "left" : null,
+              "right" : {
+                "type" : "field",
+                "value" : ["ipv4", "$valid$"]
+              }
+            }
+          },
+          "true_next" : "tbl_lookup_md_init47",
+          "false_next" : "node_19"
+        },
+        {
+          "name" : "node_13",
+          "id" : 5,
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 51,
+            "column" : 16,
+            "source_fragment" : "hdr.tcp.isValid()"
+          },
+          "expression" : {
+            "type" : "expression",
+            "value" : {
+              "op" : "d2b",
+              "left" : null,
+              "right" : {
+                "type" : "field",
+                "value" : ["tcp", "$valid$"]
+              }
+            }
+          },
+          "true_next" : "tbl_lookup_md_init52",
+          "false_next" : "node_15"
+        },
+        {
+          "name" : "node_15",
+          "id" : 6,
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 54,
+            "column" : 23,
+            "source_fragment" : "hdr.udp.isValid()"
+          },
+          "expression" : {
+            "type" : "expression",
+            "value" : {
+              "op" : "d2b",
+              "left" : null,
+              "right" : {
+                "type" : "field",
+                "value" : ["udp", "$valid$"]
+              }
+            }
+          },
+          "true_next" : "tbl_lookup_md_init55",
+          "false_next" : "node_17"
+        },
+        {
+          "name" : "node_17",
+          "id" : 7,
+          "source_info" : {
+            "filename" : "include/control/lookup_md_init.p4",
+            "line" : 57,
+            "column" : 23,
+            "source_fragment" : "hdr.icmp.isValid()"
+          },
+          "expression" : {
+            "type" : "expression",
+            "value" : {
+              "op" : "d2b",
+              "left" : null,
+              "right" : {
+                "type" : "field",
+                "value" : ["icmp", "$valid$"]
+              }
+            }
+          },
+          "true_next" : "tbl_lookup_md_init58",
+          "false_next" : "node_19"
+        },
+        {
+          "name" : "node_19",
+          "id" : 8,
+          "source_info" : {
             "filename" : "include/control/packetio.p4",
             "line" : 24,
             "column" : 12,
@@ -6730,11 +8009,11 @@
             }
           },
           "true_next" : "tbl_packetio25",
-          "false_next" : "node_4"
+          "false_next" : "FabricIngress.slice_tc_classifier.classifier"
         },
         {
-          "name" : "node_4",
-          "id" : 1,
+          "name" : "node_22",
+          "id" : 9,
           "source_info" : {
             "filename" : "include/control/filtering.p4",
             "line" : 112,
@@ -6753,11 +8032,11 @@
             }
           },
           "true_next" : "tbl_filtering113",
-          "false_next" : "node_6"
+          "false_next" : "node_24"
         },
         {
-          "name" : "node_6",
-          "id" : 2,
+          "name" : "node_24",
+          "id" : 10,
           "source_info" : {
             "filename" : "include/control/filtering.p4",
             "line" : 118,
@@ -6776,11 +8055,11 @@
             }
           },
           "true_next" : "tbl_filtering119",
-          "false_next" : "node_8"
+          "false_next" : "node_26"
         },
         {
-          "name" : "node_8",
-          "id" : 3,
+          "name" : "node_26",
+          "id" : 11,
           "source_info" : {
             "filename" : "include/control/filtering.p4",
             "line" : 124,
@@ -6809,11 +8088,11 @@
           "false_next" : "FabricIngress.filtering.ingress_port_vlan"
         },
         {
-          "name" : "node_12",
-          "id" : 4,
+          "name" : "node_30",
+          "id" : 12,
           "source_info" : {
             "filename" : "fabric.p4",
-            "line" : 71,
+            "line" : 80,
             "column" : 12,
             "source_fragment" : "fabric_metadata.skip_forwarding"
           },
@@ -6829,18 +8108,18 @@
                   "left" : null,
                   "right" : {
                     "type" : "field",
-                    "value" : ["scalars", "userMetadata._skip_forwarding10"]
+                    "value" : ["scalars", "userMetadata._skip_forwarding18"]
                   }
                 }
               }
             }
           },
-          "true_next" : "node_13",
-          "false_next" : "node_19"
+          "true_next" : "node_31",
+          "false_next" : "node_37"
         },
         {
-          "name" : "node_13",
-          "id" : 5,
+          "name" : "node_31",
+          "id" : 13,
           "source_info" : {
             "filename" : "include/control/forwarding.p4",
             "line" : 150,
@@ -6853,7 +8132,7 @@
               "op" : "==",
               "left" : {
                 "type" : "field",
-                "value" : ["scalars", "userMetadata._fwd_type12"]
+                "value" : ["scalars", "userMetadata._fwd_type20"]
               },
               "right" : {
                 "type" : "hexstr",
@@ -6862,11 +8141,11 @@
             }
           },
           "true_next" : "FabricIngress.forwarding.bridging",
-          "false_next" : "node_15"
+          "false_next" : "node_33"
         },
         {
-          "name" : "node_15",
-          "id" : 6,
+          "name" : "node_33",
+          "id" : 14,
           "source_info" : {
             "filename" : "include/control/forwarding.p4",
             "line" : 151,
@@ -6879,7 +8158,7 @@
               "op" : "==",
               "left" : {
                 "type" : "field",
-                "value" : ["scalars", "userMetadata._fwd_type12"]
+                "value" : ["scalars", "userMetadata._fwd_type20"]
               },
               "right" : {
                 "type" : "hexstr",
@@ -6888,11 +8167,11 @@
             }
           },
           "true_next" : "FabricIngress.forwarding.mpls",
-          "false_next" : "node_17"
+          "false_next" : "node_35"
         },
         {
-          "name" : "node_17",
-          "id" : 7,
+          "name" : "node_35",
+          "id" : 15,
           "source_info" : {
             "filename" : "include/control/forwarding.p4",
             "line" : 152,
@@ -6905,7 +8184,7 @@
               "op" : "==",
               "left" : {
                 "type" : "field",
-                "value" : ["scalars", "userMetadata._fwd_type12"]
+                "value" : ["scalars", "userMetadata._fwd_type20"]
               },
               "right" : {
                 "type" : "hexstr",
@@ -6914,14 +8193,14 @@
             }
           },
           "true_next" : "FabricIngress.forwarding.routing_v4",
-          "false_next" : "node_19"
+          "false_next" : "node_37"
         },
         {
-          "name" : "node_19",
-          "id" : 8,
+          "name" : "node_37",
+          "id" : 16,
           "source_info" : {
             "filename" : "fabric.p4",
-            "line" : 74,
+            "line" : 83,
             "column" : 12,
             "source_fragment" : "fabric_metadata.skip_next"
           },
@@ -6937,176 +8216,21 @@
                   "left" : null,
                   "right" : {
                     "type" : "field",
-                    "value" : ["scalars", "userMetadata._skip_next11"]
+                    "value" : ["scalars", "userMetadata._skip_next19"]
                   }
                 }
               }
             }
           },
           "true_next" : "FabricIngress.pre_next.next_mpls",
-          "false_next" : "tbl_acl27"
-        },
-        {
-          "name" : "node_23",
-          "id" : 9,
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 97,
-            "column" : 12,
-            "source_fragment" : "hdr.gtpu.isValid() && hdr.inner_ipv4.isValid()"
-          },
-          "expression" : {
-            "type" : "expression",
-            "value" : {
-              "op" : "and",
-              "left" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "d2b",
-                  "left" : null,
-                  "right" : {
-                    "type" : "field",
-                    "value" : ["gtpu", "$valid$"]
-                  }
-                }
-              },
-              "right" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "d2b",
-                  "left" : null,
-                  "right" : {
-                    "type" : "field",
-                    "value" : ["inner_ipv4", "$valid$"]
-                  }
-                }
-              }
-            }
-          },
-          "true_next" : "tbl_acl98",
-          "false_next" : "node_29"
-        },
-        {
-          "name" : "node_25",
-          "id" : 10,
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 101,
-            "column" : 16,
-            "source_fragment" : "hdr.inner_tcp.isValid()"
-          },
-          "expression" : {
-            "type" : "expression",
-            "value" : {
-              "op" : "d2b",
-              "left" : null,
-              "right" : {
-                "type" : "field",
-                "value" : ["inner_tcp", "$valid$"]
-              }
-            }
-          },
-          "true_next" : "tbl_acl102",
-          "false_next" : "node_27"
-        },
-        {
-          "name" : "node_27",
-          "id" : 11,
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 104,
-            "column" : 23,
-            "source_fragment" : "hdr.inner_udp.isValid()"
-          },
-          "expression" : {
-            "type" : "expression",
-            "value" : {
-              "op" : "d2b",
-              "left" : null,
-              "right" : {
-                "type" : "field",
-                "value" : ["inner_udp", "$valid$"]
-              }
-            }
-          },
-          "true_next" : "tbl_acl105",
           "false_next" : "FabricIngress.acl.acl"
         },
         {
-          "name" : "node_29",
-          "id" : 12,
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 108,
-            "column" : 19,
-            "source_fragment" : "hdr.ipv4.isValid()"
-          },
-          "expression" : {
-            "type" : "expression",
-            "value" : {
-              "op" : "d2b",
-              "left" : null,
-              "right" : {
-                "type" : "field",
-                "value" : ["ipv4", "$valid$"]
-              }
-            }
-          },
-          "true_next" : "tbl_acl109",
-          "false_next" : "FabricIngress.acl.acl"
-        },
-        {
-          "name" : "node_31",
-          "id" : 13,
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 112,
-            "column" : 16,
-            "source_fragment" : "hdr.tcp.isValid()"
-          },
-          "expression" : {
-            "type" : "expression",
-            "value" : {
-              "op" : "d2b",
-              "left" : null,
-              "right" : {
-                "type" : "field",
-                "value" : ["tcp", "$valid$"]
-              }
-            }
-          },
-          "true_next" : "tbl_acl113",
-          "false_next" : "node_33"
-        },
-        {
-          "name" : "node_33",
-          "id" : 14,
-          "source_info" : {
-            "filename" : "include/control/acl.p4",
-            "line" : 115,
-            "column" : 23,
-            "source_fragment" : "hdr.udp.isValid()"
-          },
-          "expression" : {
-            "type" : "expression",
-            "value" : {
-              "op" : "d2b",
-              "left" : null,
-              "right" : {
-                "type" : "field",
-                "value" : ["udp", "$valid$"]
-              }
-            }
-          },
-          "true_next" : "tbl_acl116",
-          "false_next" : "FabricIngress.acl.acl"
-        },
-        {
-          "name" : "node_36",
-          "id" : 15,
+          "name" : "node_41",
+          "id" : 17,
           "source_info" : {
             "filename" : "fabric.p4",
-            "line" : 78,
+            "line" : 87,
             "column" : 12,
             "source_fragment" : "fabric_metadata.skip_next"
           },
@@ -7122,7 +8246,7 @@
                   "left" : null,
                   "right" : {
                     "type" : "field",
-                    "value" : ["scalars", "userMetadata._skip_next11"]
+                    "value" : ["scalars", "userMetadata._skip_next19"]
                   }
                 }
               }
@@ -7132,8 +8256,8 @@
           "false_next" : "FabricIngress.bng_ingress.t_line_map"
         },
         {
-          "name" : "node_39",
-          "id" : 16,
+          "name" : "node_44",
+          "id" : 18,
           "source_info" : {
             "filename" : "include/control/port_counter.p4",
             "line" : 30,
@@ -7155,11 +8279,11 @@
             }
           },
           "true_next" : "tbl_port_counter31",
-          "false_next" : "node_41"
+          "false_next" : "node_46"
         },
         {
-          "name" : "node_41",
-          "id" : 17,
+          "name" : "node_46",
+          "id" : 19,
           "source_info" : {
             "filename" : "include/control/port_counter.p4",
             "line" : 33,
@@ -7184,8 +8308,8 @@
           "false_next" : "FabricIngress.bng_ingress.t_line_map"
         },
         {
-          "name" : "node_44",
-          "id" : 18,
+          "name" : "node_49",
+          "id" : 20,
           "source_info" : {
             "filename" : "include/bng.p4",
             "line" : 341,
@@ -7207,8 +8331,8 @@
           "false_next" : "FabricIngress.bng_ingress.downstream.t_line_session_map"
         },
         {
-          "name" : "node_48",
-          "id" : 19,
+          "name" : "node_53",
+          "id" : 21,
           "expression" : {
             "type" : "expression",
             "value" : {
@@ -7227,12 +8351,12 @@
               }
             }
           },
-          "false_next" : null,
-          "true_next" : "node_49"
+          "true_next" : "node_54",
+          "false_next" : "tbl_slicing114"
         },
         {
-          "name" : "node_49",
-          "id" : 20,
+          "name" : "node_54",
+          "id" : 22,
           "source_info" : {
             "filename" : "include/bng.p4",
             "line" : 128,
@@ -7250,12 +8374,12 @@
               }
             }
           },
-          "false_next" : null,
-          "true_next" : "FabricIngress.bng_ingress.upstream.t_pppoe_term_v4"
+          "true_next" : "FabricIngress.bng_ingress.upstream.t_pppoe_term_v4",
+          "false_next" : "tbl_slicing114"
         },
         {
-          "name" : "node_53",
-          "id" : 21,
+          "name" : "node_58",
+          "id" : 23,
           "source_info" : {
             "filename" : "include/bng.p4",
             "line" : 235,
@@ -7273,8 +8397,8 @@
               }
             }
           },
-          "false_next" : null,
-          "true_next" : "FabricIngress.bng_ingress.downstream.t_qos_v4"
+          "true_next" : "FabricIngress.bng_ingress.downstream.t_qos_v4",
+          "false_next" : "tbl_slicing114"
         }
       ]
     },
@@ -7283,15 +8407,15 @@
       "id" : 1,
       "source_info" : {
         "filename" : "fabric.p4",
-        "line" : 96,
+        "line" : 105,
         "column" : 8,
         "source_fragment" : "FabricEgress"
       },
-      "init_table" : "node_59",
+      "init_table" : "node_66",
       "tables" : [
         {
           "name" : "tbl_packetio41",
-          "id" : 33,
+          "id" : 38,
           "source_info" : {
             "filename" : "include/control/packetio.p4",
             "line" : 41,
@@ -7305,14 +8429,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [62],
+          "action_ids" : [72],
           "actions" : ["packetio41"],
-          "base_default_next" : "node_61",
+          "base_default_next" : "node_68",
           "next_tables" : {
-            "packetio41" : "node_61"
+            "packetio41" : "node_68"
           },
           "default_entry" : {
-            "action_id" : 62,
+            "action_id" : 72,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -7320,7 +8444,7 @@
         },
         {
           "name" : "tbl_packetio44",
-          "id" : 34,
+          "id" : 39,
           "source_info" : {
             "filename" : "include/control/packetio.p4",
             "line" : 44,
@@ -7334,14 +8458,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [63],
+          "action_ids" : [73],
           "actions" : ["packetio44"],
-          "base_default_next" : "node_63",
+          "base_default_next" : "node_70",
           "next_tables" : {
-            "packetio44" : "node_63"
+            "packetio44" : "node_70"
           },
           "default_entry" : {
-            "action_id" : 63,
+            "action_id" : 73,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -7349,7 +8473,7 @@
         },
         {
           "name" : "tbl_next283",
-          "id" : 35,
+          "id" : 40,
           "source_info" : {
             "filename" : "include/control/next.p4",
             "line" : 283,
@@ -7363,14 +8487,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [64],
+          "action_ids" : [74],
           "actions" : ["next283"],
-          "base_default_next" : "node_65",
+          "base_default_next" : "node_72",
           "next_tables" : {
-            "next283" : "node_65"
+            "next283" : "node_72"
           },
           "default_entry" : {
-            "action_id" : 64,
+            "action_id" : 74,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -7378,7 +8502,7 @@
         },
         {
           "name" : "tbl_egress_next_pop_mpls_if_present",
-          "id" : 36,
+          "id" : 41,
           "source_info" : {
             "filename" : "include/control/next.p4",
             "line" : 287,
@@ -7392,14 +8516,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [55],
+          "action_ids" : [63],
           "actions" : ["FabricEgress.egress_next.pop_mpls_if_present"],
-          "base_default_next" : "node_69",
+          "base_default_next" : "node_76",
           "next_tables" : {
-            "FabricEgress.egress_next.pop_mpls_if_present" : "node_69"
+            "FabricEgress.egress_next.pop_mpls_if_present" : "node_76"
           },
           "default_entry" : {
-            "action_id" : 55,
+            "action_id" : 63,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -7407,7 +8531,7 @@
         },
         {
           "name" : "tbl_egress_next_set_mpls",
-          "id" : 37,
+          "id" : 42,
           "source_info" : {
             "filename" : "include/control/next.p4",
             "line" : 289,
@@ -7421,14 +8545,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [56],
+          "action_ids" : [64],
           "actions" : ["FabricEgress.egress_next.set_mpls"],
-          "base_default_next" : "node_69",
+          "base_default_next" : "node_76",
           "next_tables" : {
-            "FabricEgress.egress_next.set_mpls" : "node_69"
+            "FabricEgress.egress_next.set_mpls" : "node_76"
           },
           "default_entry" : {
-            "action_id" : 56,
+            "action_id" : 64,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -7436,7 +8560,7 @@
         },
         {
           "name" : "tbl_egress_next_push_outer_vlan",
-          "id" : 38,
+          "id" : 43,
           "source_info" : {
             "filename" : "include/control/next.p4",
             "line" : 295,
@@ -7450,14 +8574,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [57],
+          "action_ids" : [65],
           "actions" : ["FabricEgress.egress_next.push_outer_vlan"],
           "base_default_next" : "tbl_egress_next_push_inner_vlan",
           "next_tables" : {
             "FabricEgress.egress_next.push_outer_vlan" : "tbl_egress_next_push_inner_vlan"
           },
           "default_entry" : {
-            "action_id" : 57,
+            "action_id" : 65,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -7465,7 +8589,7 @@
         },
         {
           "name" : "tbl_egress_next_push_inner_vlan",
-          "id" : 39,
+          "id" : 44,
           "source_info" : {
             "filename" : "include/control/next.p4",
             "line" : 296,
@@ -7479,14 +8603,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [58],
+          "action_ids" : [66],
           "actions" : ["FabricEgress.egress_next.push_inner_vlan"],
-          "base_default_next" : "node_74",
+          "base_default_next" : "node_81",
           "next_tables" : {
-            "FabricEgress.egress_next.push_inner_vlan" : "node_74"
+            "FabricEgress.egress_next.push_inner_vlan" : "node_81"
           },
           "default_entry" : {
-            "action_id" : 58,
+            "action_id" : 66,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -7494,7 +8618,7 @@
         },
         {
           "name" : "tbl_next299",
-          "id" : 40,
+          "id" : 45,
           "source_info" : {
             "filename" : "include/control/next.p4",
             "line" : 299,
@@ -7508,14 +8632,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [65],
+          "action_ids" : [75],
           "actions" : ["next299"],
           "base_default_next" : "FabricEgress.egress_next.egress_vlan",
           "next_tables" : {
             "next299" : "FabricEgress.egress_next.egress_vlan"
           },
           "default_entry" : {
-            "action_id" : 65,
+            "action_id" : 75,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -7523,7 +8647,7 @@
         },
         {
           "name" : "FabricEgress.egress_next.egress_vlan",
-          "id" : 41,
+          "id" : 46,
           "source_info" : {
             "filename" : "include/control/next.p4",
             "line" : 265,
@@ -7534,7 +8658,7 @@
             {
               "match_type" : "exact",
               "name" : "vlan_id",
-              "target" : ["scalars", "userMetadata._vlan_id1"],
+              "target" : ["scalars", "userMetadata._vlan_id9"],
               "mask" : null
             },
             {
@@ -7550,16 +8674,16 @@
           "with_counters" : true,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [59, 60, 61],
+          "action_ids" : [67, 68, 69],
           "actions" : ["FabricEgress.egress_next.push_vlan", "FabricEgress.egress_next.pop_vlan", "FabricEgress.egress_next.drop"],
-          "base_default_next" : "node_74",
+          "base_default_next" : "node_81",
           "next_tables" : {
-            "FabricEgress.egress_next.push_vlan" : "node_74",
-            "FabricEgress.egress_next.pop_vlan" : "node_74",
-            "FabricEgress.egress_next.drop" : "node_74"
+            "FabricEgress.egress_next.push_vlan" : "node_81",
+            "FabricEgress.egress_next.pop_vlan" : "node_81",
+            "FabricEgress.egress_next.drop" : "node_81"
           },
           "default_entry" : {
-            "action_id" : 61,
+            "action_id" : 69,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -7567,7 +8691,7 @@
         },
         {
           "name" : "tbl_next309",
-          "id" : 42,
+          "id" : 47,
           "source_info" : {
             "filename" : "include/control/next.p4",
             "line" : 309,
@@ -7581,14 +8705,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [67],
+          "action_ids" : [77],
           "actions" : ["next309"],
-          "base_default_next" : "node_76",
+          "base_default_next" : "node_83",
           "next_tables" : {
-            "next309" : "node_76"
+            "next309" : "node_83"
           },
           "default_entry" : {
-            "action_id" : 67,
+            "action_id" : 77,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -7596,7 +8720,7 @@
         },
         {
           "name" : "tbl_next310",
-          "id" : 43,
+          "id" : 48,
           "source_info" : {
             "filename" : "include/control/next.p4",
             "line" : 310,
@@ -7610,14 +8734,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [66],
+          "action_ids" : [76],
           "actions" : ["next310"],
-          "base_default_next" : "node_82",
+          "base_default_next" : "node_89",
           "next_tables" : {
-            "next310" : "node_82"
+            "next310" : "node_89"
           },
           "default_entry" : {
-            "action_id" : 66,
+            "action_id" : 76,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -7625,7 +8749,7 @@
         },
         {
           "name" : "tbl_next313",
-          "id" : 44,
+          "id" : 49,
           "source_info" : {
             "filename" : "include/control/next.p4",
             "line" : 313,
@@ -7639,14 +8763,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [69],
+          "action_ids" : [79],
           "actions" : ["next313"],
-          "base_default_next" : "node_80",
+          "base_default_next" : "node_87",
           "next_tables" : {
-            "next313" : "node_80"
+            "next313" : "node_87"
           },
           "default_entry" : {
-            "action_id" : 69,
+            "action_id" : 79,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -7654,7 +8778,7 @@
         },
         {
           "name" : "tbl_next314",
-          "id" : 45,
+          "id" : 50,
           "source_info" : {
             "filename" : "include/control/next.p4",
             "line" : 314,
@@ -7668,14 +8792,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [68],
+          "action_ids" : [78],
           "actions" : ["next314"],
-          "base_default_next" : "node_82",
+          "base_default_next" : "node_89",
           "next_tables" : {
-            "next314" : "node_82"
+            "next314" : "node_89"
           },
           "default_entry" : {
-            "action_id" : 68,
+            "action_id" : 78,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -7683,7 +8807,7 @@
         },
         {
           "name" : "tbl_bng_egress_downstream_encap_v4",
-          "id" : 46,
+          "id" : 51,
           "source_info" : {
             "filename" : "include/bng.p4",
             "line" : 297,
@@ -7697,14 +8821,109 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [54],
+          "action_ids" : [62],
           "actions" : ["FabricEgress.bng_egress.downstream.encap_v4"],
-          "base_default_next" : null,
+          "base_default_next" : "tbl_slicing126",
           "next_tables" : {
-            "FabricEgress.bng_egress.downstream.encap_v4" : null
+            "FabricEgress.bng_egress.downstream.encap_v4" : "tbl_slicing126"
           },
           "default_entry" : {
-            "action_id" : 54,
+            "action_id" : 62,
+            "action_const" : true,
+            "action_data" : [],
+            "action_entry_const" : true
+          }
+        },
+        {
+          "name" : "tbl_slicing126",
+          "id" : 52,
+          "source_info" : {
+            "filename" : "include/control/slicing.p4",
+            "line" : 126,
+            "column" : 4,
+            "source_fragment" : "bit<6> tmp_dscp = fabric_md.dscp;"
+          },
+          "key" : [],
+          "match_type" : "exact",
+          "type" : "simple",
+          "max_size" : 1024,
+          "with_counters" : false,
+          "support_timeout" : false,
+          "direct_meters" : null,
+          "action_ids" : [81],
+          "actions" : ["slicing126"],
+          "base_default_next" : "FabricEgress.dscp_rewriter.rewriter",
+          "next_tables" : {
+            "slicing126" : "FabricEgress.dscp_rewriter.rewriter"
+          },
+          "default_entry" : {
+            "action_id" : 81,
+            "action_const" : true,
+            "action_data" : [],
+            "action_entry_const" : true
+          }
+        },
+        {
+          "name" : "FabricEgress.dscp_rewriter.rewriter",
+          "id" : 53,
+          "source_info" : {
+            "filename" : "include/control/slicing.p4",
+            "line" : 138,
+            "column" : 10,
+            "source_fragment" : "rewriter"
+          },
+          "key" : [
+            {
+              "match_type" : "exact",
+              "name" : "eg_port",
+              "target" : ["standard_metadata", "egress_port"],
+              "mask" : null
+            }
+          ],
+          "match_type" : "exact",
+          "type" : "simple",
+          "max_size" : 512,
+          "with_counters" : false,
+          "support_timeout" : false,
+          "direct_meters" : null,
+          "action_ids" : [70, 71, 61],
+          "actions" : ["FabricEgress.dscp_rewriter.rewrite", "FabricEgress.dscp_rewriter.clear", "nop"],
+          "base_default_next" : null,
+          "next_tables" : {
+            "__MISS__" : null,
+            "__HIT__" : "node_94"
+          },
+          "default_entry" : {
+            "action_id" : 61,
+            "action_const" : true,
+            "action_data" : [],
+            "action_entry_const" : true
+          }
+        },
+        {
+          "name" : "tbl_slicing159",
+          "id" : 54,
+          "source_info" : {
+            "filename" : "include/control/slicing.p4",
+            "line" : 159,
+            "column" : 36,
+            "source_fragment" : "="
+          },
+          "key" : [],
+          "match_type" : "exact",
+          "type" : "simple",
+          "max_size" : 1024,
+          "with_counters" : false,
+          "support_timeout" : false,
+          "direct_meters" : null,
+          "action_ids" : [80],
+          "actions" : ["slicing159"],
+          "base_default_next" : null,
+          "next_tables" : {
+            "slicing159" : null
+          },
+          "default_entry" : {
+            "action_id" : 80,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -7714,11 +8933,11 @@
       "action_profiles" : [],
       "conditionals" : [
         {
-          "name" : "node_59",
-          "id" : 22,
+          "name" : "node_66",
+          "id" : 24,
           "source_info" : {
             "filename" : "fabric.p4",
-            "line" : 108,
+            "line" : 118,
             "column" : 33,
             "source_fragment" : "fabric_metadata"
           },
@@ -7729,16 +8948,16 @@
               "left" : null,
               "right" : {
                 "type" : "field",
-                "value" : ["scalars", "userMetadata._is_controller_packet_out15"]
+                "value" : ["scalars", "userMetadata._is_controller_packet_out23"]
               }
             }
           },
           "true_next" : "tbl_packetio41",
-          "false_next" : "node_61"
+          "false_next" : "node_68"
         },
         {
-          "name" : "node_61",
-          "id" : 23,
+          "name" : "node_68",
+          "id" : 25,
           "source_info" : {
             "filename" : "include/control/packetio.p4",
             "line" : 43,
@@ -7760,11 +8979,11 @@
             }
           },
           "true_next" : "tbl_packetio44",
-          "false_next" : "node_63"
+          "false_next" : "node_70"
         },
         {
-          "name" : "node_63",
-          "id" : 24,
+          "name" : "node_70",
+          "id" : 26,
           "source_info" : {
             "filename" : "include/control/next.p4",
             "line" : 281,
@@ -7782,7 +9001,7 @@
                   "left" : null,
                   "right" : {
                     "type" : "field",
-                    "value" : ["scalars", "userMetadata._is_multicast14"]
+                    "value" : ["scalars", "userMetadata._is_multicast22"]
                   }
                 }
               },
@@ -7803,11 +9022,11 @@
             }
           },
           "true_next" : "tbl_next283",
-          "false_next" : "node_65"
+          "false_next" : "node_72"
         },
         {
-          "name" : "node_65",
-          "id" : 25,
+          "name" : "node_72",
+          "id" : 27,
           "source_info" : {
             "filename" : "include/control/next.p4",
             "line" : 286,
@@ -7820,7 +9039,7 @@
               "op" : "==",
               "left" : {
                 "type" : "field",
-                "value" : ["scalars", "userMetadata._mpls_label8"]
+                "value" : ["scalars", "userMetadata._mpls_label16"]
               },
               "right" : {
                 "type" : "hexstr",
@@ -7828,12 +9047,12 @@
               }
             }
           },
-          "true_next" : "node_66",
+          "true_next" : "node_73",
           "false_next" : "tbl_egress_next_set_mpls"
         },
         {
-          "name" : "node_66",
-          "id" : 26,
+          "name" : "node_73",
+          "id" : 28,
           "source_info" : {
             "filename" : "include/control/next.p4",
             "line" : 287,
@@ -7852,14 +9071,14 @@
             }
           },
           "true_next" : "tbl_egress_next_pop_mpls_if_present",
-          "false_next" : "node_69"
+          "false_next" : "node_76"
         },
         {
-          "name" : "node_69",
-          "id" : 27,
+          "name" : "node_76",
+          "id" : 29,
           "source_info" : {
             "filename" : "fabric.p4",
-            "line" : 109,
+            "line" : 119,
             "column" : 31,
             "source_fragment" : "fabric_metadata"
           },
@@ -7870,7 +9089,7 @@
               "left" : null,
               "right" : {
                 "type" : "field",
-                "value" : ["scalars", "userMetadata._push_double_vlan4"]
+                "value" : ["scalars", "userMetadata._push_double_vlan12"]
               }
             }
           },
@@ -7878,8 +9097,8 @@
           "false_next" : "tbl_next299"
         },
         {
-          "name" : "node_74",
-          "id" : 28,
+          "name" : "node_81",
+          "id" : 30,
           "source_info" : {
             "filename" : "include/control/next.p4",
             "line" : 308,
@@ -7898,11 +9117,11 @@
             }
           },
           "true_next" : "tbl_next309",
-          "false_next" : "node_78"
+          "false_next" : "node_85"
         },
         {
-          "name" : "node_76",
-          "id" : 29,
+          "name" : "node_83",
+          "id" : 31,
           "source_info" : {
             "filename" : "include/control/next.p4",
             "line" : 310,
@@ -7924,11 +9143,11 @@
             }
           },
           "true_next" : "tbl_next310",
-          "false_next" : "node_82"
+          "false_next" : "node_89"
         },
         {
-          "name" : "node_78",
-          "id" : 30,
+          "name" : "node_85",
+          "id" : 32,
           "source_info" : {
             "filename" : "include/control/next.p4",
             "line" : 312,
@@ -7956,7 +9175,7 @@
                   "op" : "!=",
                   "left" : {
                     "type" : "field",
-                    "value" : ["scalars", "userMetadata._fwd_type12"]
+                    "value" : ["scalars", "userMetadata._fwd_type20"]
                   },
                   "right" : {
                     "type" : "hexstr",
@@ -7967,11 +9186,11 @@
             }
           },
           "true_next" : "tbl_next313",
-          "false_next" : "node_82"
+          "false_next" : "node_89"
         },
         {
-          "name" : "node_80",
-          "id" : 31,
+          "name" : "node_87",
+          "id" : 33,
           "source_info" : {
             "filename" : "include/control/next.p4",
             "line" : 314,
@@ -7993,11 +9212,11 @@
             }
           },
           "true_next" : "tbl_next314",
-          "false_next" : "node_82"
+          "false_next" : "node_89"
         },
         {
-          "name" : "node_82",
-          "id" : 32,
+          "name" : "node_89",
+          "id" : 34,
           "source_info" : {
             "filename" : "include/bng.p4",
             "line" : 358,
@@ -8010,7 +9229,7 @@
               "op" : "==",
               "left" : {
                 "type" : "field",
-                "value" : ["scalars", "userMetadata._bng_type21"]
+                "value" : ["scalars", "userMetadata._bng_type33"]
               },
               "right" : {
                 "type" : "hexstr",
@@ -8018,12 +9237,12 @@
               }
             }
           },
-          "false_next" : null,
-          "true_next" : "node_83"
+          "true_next" : "node_90",
+          "false_next" : "tbl_slicing126"
         },
         {
-          "name" : "node_83",
-          "id" : 33,
+          "name" : "node_90",
+          "id" : 35,
           "source_info" : {
             "filename" : "include/bng.p4",
             "line" : 296,
@@ -8041,8 +9260,31 @@
               }
             }
           },
+          "true_next" : "tbl_bng_egress_downstream_encap_v4",
+          "false_next" : "tbl_slicing126"
+        },
+        {
+          "name" : "node_94",
+          "id" : 36,
+          "source_info" : {
+            "filename" : "include/control/slicing.p4",
+            "line" : 158,
+            "column" : 16,
+            "source_fragment" : "hdr.ipv4.isValid()"
+          },
+          "expression" : {
+            "type" : "expression",
+            "value" : {
+              "op" : "d2b",
+              "left" : null,
+              "right" : {
+                "type" : "field",
+                "value" : ["ipv4", "$valid$"]
+              }
+            }
+          },
           "false_next" : null,
-          "true_next" : "tbl_bng_egress_downstream_encap_v4"
+          "true_next" : "tbl_slicing159"
         }
       ]
     }
diff --git a/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-bng/bmv2/default/p4info.txt b/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-bng/bmv2/default/p4info.txt
index 29aa49f..b909706 100644
--- a/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-bng/bmv2/default/p4info.txt
+++ b/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-bng/bmv2/default/p4info.txt
@@ -521,6 +521,92 @@
 }
 tables {
   preamble {
+    id: 34606298
+    name: "FabricIngress.slice_tc_classifier.classifier"
+    alias: "classifier"
+  }
+  match_fields {
+    id: 1
+    name: "ig_port"
+    bitwidth: 9
+    match_type: TERNARY
+  }
+  match_fields {
+    id: 2
+    name: "ipv4_src"
+    bitwidth: 32
+    match_type: TERNARY
+  }
+  match_fields {
+    id: 3
+    name: "ipv4_dst"
+    bitwidth: 32
+    match_type: TERNARY
+  }
+  match_fields {
+    id: 4
+    name: "ip_proto"
+    bitwidth: 8
+    match_type: TERNARY
+  }
+  match_fields {
+    id: 5
+    name: "l4_sport"
+    bitwidth: 16
+    match_type: TERNARY
+  }
+  match_fields {
+    id: 6
+    name: "l4_dport"
+    bitwidth: 16
+    match_type: TERNARY
+  }
+  action_refs {
+    id: 23786376
+  }
+  action_refs {
+    id: 25983516
+  }
+  const_default_action_id: 23786376
+  direct_resource_ids: 334706097
+  size: 512
+}
+tables {
+  preamble {
+    id: 36435258
+    name: "FabricIngress.qos.queues"
+    alias: "queues"
+  }
+  match_fields {
+    id: 1
+    name: "slice_id"
+    bitwidth: 4
+    match_type: EXACT
+  }
+  match_fields {
+    id: 2
+    name: "tc"
+    bitwidth: 2
+    match_type: EXACT
+  }
+  match_fields {
+    id: 3
+    name: "color"
+    bitwidth: 2
+    match_type: TERNARY
+  }
+  action_refs {
+    id: 32116918
+  }
+  action_refs {
+    id: 28214351
+  }
+  const_default_action_id: 32116918
+  direct_resource_ids: 327743278
+  size: 128
+}
+tables {
+  preamble {
     id: 49262446
     name: "FabricEgress.egress_next.egress_vlan"
     alias: "egress_vlan"
@@ -552,6 +638,32 @@
   direct_resource_ids: 318892680
   size: 1024
 }
+tables {
+  preamble {
+    id: 49970092
+    name: "FabricEgress.dscp_rewriter.rewriter"
+    alias: "rewriter"
+  }
+  match_fields {
+    id: 1
+    name: "eg_port"
+    bitwidth: 9
+    match_type: EXACT
+  }
+  action_refs {
+    id: 27951287
+  }
+  action_refs {
+    id: 24120545
+  }
+  action_refs {
+    id: 28485346
+    annotations: "@defaultonly"
+    scope: DEFAULT_ONLY
+  }
+  const_default_action_id: 28485346
+  size: 512
+}
 actions {
   preamble {
     id: 28485346
@@ -850,6 +962,49 @@
 }
 actions {
   preamble {
+    id: 23786376
+    name: "FabricIngress.slice_tc_classifier.set_slice_id_tc"
+    alias: "set_slice_id_tc"
+  }
+  params {
+    id: 1
+    name: "slice_id"
+    bitwidth: 4
+  }
+  params {
+    id: 2
+    name: "tc"
+    bitwidth: 2
+  }
+}
+actions {
+  preamble {
+    id: 25983516
+    name: "FabricIngress.slice_tc_classifier.trust_dscp"
+    alias: "trust_dscp"
+  }
+}
+actions {
+  preamble {
+    id: 32116918
+    name: "FabricIngress.qos.set_queue"
+    alias: "set_queue"
+  }
+  params {
+    id: 1
+    name: "qid"
+    bitwidth: 5
+  }
+}
+actions {
+  preamble {
+    id: 28214351
+    name: "FabricIngress.qos.meter_drop"
+    alias: "meter_drop"
+  }
+}
+actions {
+  preamble {
     id: 20781696
     name: "FabricEgress.bng_egress.downstream.encap_v4"
     alias: "encap_v4"
@@ -876,6 +1031,20 @@
     alias: "egress_next.drop"
   }
 }
+actions {
+  preamble {
+    id: 27951287
+    name: "FabricEgress.dscp_rewriter.rewrite"
+    alias: "rewrite"
+  }
+}
+actions {
+  preamble {
+    id: 24120545
+    name: "FabricEgress.dscp_rewriter.clear"
+    alias: "clear"
+  }
+}
 action_profiles {
   preamble {
     id: 291115404
@@ -1065,6 +1234,28 @@
 }
 direct_counters {
   preamble {
+    id: 334706097
+    name: "FabricIngress.slice_tc_classifier.classifier_stats"
+    alias: "classifier_stats"
+  }
+  spec {
+    unit: PACKETS
+  }
+  direct_table_id: 34606298
+}
+direct_counters {
+  preamble {
+    id: 327743278
+    name: "FabricIngress.qos.queues_stats"
+    alias: "queues_stats"
+  }
+  spec {
+    unit: PACKETS
+  }
+  direct_table_id: 36435258
+}
+direct_counters {
+  preamble {
     id: 318892680
     name: "FabricEgress.egress_next.egress_vlan_counter"
     alias: "egress_vlan_counter"
@@ -1096,6 +1287,17 @@
   }
   size: 8192
 }
+meters {
+  preamble {
+    id: 348573637
+    name: "FabricIngress.qos.slice_tc_meter"
+    alias: "slice_tc_meter"
+  }
+  spec {
+    unit: BYTES
+  }
+  size: 64
+}
 controller_packet_metadata {
   preamble {
     id: 81826293