Fabric pipeconf with Tofino support

Change-Id: If2f354c050e4b31cd1fbf17de53641350d0435f0
diff --git a/pipelines/fabric-hw/BUCK b/pipelines/fabric-hw/BUCK
new file mode 100644
index 0000000..d6b3978
--- /dev/null
+++ b/pipelines/fabric-hw/BUCK
@@ -0,0 +1,35 @@
+COMPILE_DEPS = [
+    '//lib:CORE_DEPS',
+    '//lib:KRYO',
+    '//protocols/p4runtime/model:onos-protocols-p4runtime-model',
+    '//protocols/p4runtime/api:onos-protocols-p4runtime-api',
+    '//pipelines/basic:onos-pipelines-basic',
+    '//pipelines/fabric:onos-pipelines-fabric',
+    '//core/store/serializers:onos-core-serializers',
+]
+
+TEST_DEPS = [
+    '//lib:TEST_ADAPTERS',
+]
+
+BUNDLES = [
+    '//pipelines/fabric-hw:onos-pipelines-fabric-hw',
+]
+
+osgi_jar_with_tests (
+    deps = COMPILE_DEPS,
+    test_deps = TEST_DEPS,
+)
+
+onos_app(
+    app_name = 'org.onosproject.pipelines.fabric-hw',
+    title = 'Fabric Pipeline',
+    category = 'Pipeline',
+    url = 'http://onosproject.org',
+    description = 'Provides CORD fabric pipelines for HW P4-enabled switches',
+    included_bundles = BUNDLES,
+    required_apps = [
+        'org.onosproject.drivers.p4runtime',
+        'org.onosproject.pipelines.fabric',
+    ]
+)
diff --git a/pipelines/fabric-hw/src/main/java/org/onosproject/pipelines/fabric/hw/HwPipeconfLoader.java b/pipelines/fabric-hw/src/main/java/org/onosproject/pipelines/fabric/hw/HwPipeconfLoader.java
new file mode 100644
index 0000000..05e03e6
--- /dev/null
+++ b/pipelines/fabric-hw/src/main/java/org/onosproject/pipelines/fabric/hw/HwPipeconfLoader.java
@@ -0,0 +1,128 @@
+/*
+ * Copyright 2018-present Open Networking Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.onosproject.pipelines.fabric.hw;
+
+import com.google.common.collect.ImmutableList;
+import org.apache.felix.scr.annotations.Activate;
+import org.apache.felix.scr.annotations.Component;
+import org.apache.felix.scr.annotations.Deactivate;
+import org.apache.felix.scr.annotations.Reference;
+import org.apache.felix.scr.annotations.ReferenceCardinality;
+import org.onosproject.net.behaviour.Pipeliner;
+import org.onosproject.net.device.PortStatisticsDiscovery;
+import org.onosproject.net.pi.model.DefaultPiPipeconf;
+import org.onosproject.net.pi.model.PiPipeconf;
+import org.onosproject.net.pi.model.PiPipeconfId;
+import org.onosproject.net.pi.model.PiPipelineInterpreter;
+import org.onosproject.net.pi.model.PiPipelineModel;
+import org.onosproject.net.pi.service.PiPipeconfService;
+import org.onosproject.p4runtime.model.P4InfoParser;
+import org.onosproject.p4runtime.model.P4InfoParserException;
+import org.onosproject.pipelines.fabric.FabricInterpreter;
+import org.onosproject.pipelines.fabric.FabricPortStatisticsDiscovery;
+import org.onosproject.pipelines.fabric.pipeliner.FabricPipeliner;
+
+import java.net.URL;
+import java.util.Collection;
+
+import static java.lang.String.format;
+import static org.onosproject.net.pi.model.PiPipeconf.ExtensionType.P4_INFO_TEXT;
+import static org.onosproject.net.pi.model.PiPipeconf.ExtensionType.TOFINO_BIN;
+import static org.onosproject.net.pi.model.PiPipeconf.ExtensionType.TOFINO_CONTEXT_JSON;
+import static org.onosproject.pipelines.fabric.PipeconfLoader.FABRIC_PIPECONF_ID;
+
+/**
+ * Pipeline config loader for fabric pipeline.
+ */
+@Component(immediate = true)
+public class HwPipeconfLoader {
+
+    private static final String MAVERICKS = "mavericks";
+    private static final String MONTANA = "montana";
+
+    private static final String PLAIN_FABRIC = "";
+    // private static final String WITH_SPGW = "-spgw";
+
+    // TODO: add WITH_SPGW when ready
+    private static final Collection<String> APPENDICES = ImmutableList
+            .of(PLAIN_FABRIC);
+
+    private static final Collection<String> PLATFORMS = ImmutableList
+            .of(MAVERICKS, MONTANA);
+
+    private static final String BASE_PATH = "/p4c-out/tofino/fabric%s/%s";
+    private static final String BASE_TOFINO_BIN_PATH = BASE_PATH + "/tofino.bin";
+    private static final String BASE_CONTEXT_JSON_PATH = BASE_PATH + "/context.json";
+    private static final String BASE_P4INFO_PATH = BASE_PATH + "/fabric.p4info";
+
+    private static final Collection<PiPipeconf> ALL_PIPECONFS = buildAll();
+
+    @Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY)
+    private PiPipeconfService piPipeconfService;
+
+    @Activate
+    public void activate() {
+        // Registers all pipeconf at component activation.
+        ALL_PIPECONFS.forEach(piPipeconfService::register);
+    }
+
+    @Deactivate
+    public void deactivate() {
+        ALL_PIPECONFS.stream().map(PiPipeconf::id).forEach(piPipeconfService::remove);
+    }
+
+    private static PiPipeconf buildTofinoPipeconf(String platform, String appendix) {
+        final PiPipeconfId pipeconfId = new PiPipeconfId(
+                FABRIC_PIPECONF_ID.id() + appendix + "." + platform);
+        final URL tofinoBinUrl = HwPipeconfLoader.class
+                .getResource(format(BASE_TOFINO_BIN_PATH, appendix, platform));
+        final URL contextJsonUrl = HwPipeconfLoader.class
+                .getResource(format(BASE_CONTEXT_JSON_PATH, appendix, platform));
+        final URL p4InfoUrl = HwPipeconfLoader.class
+                .getResource(format(BASE_P4INFO_PATH, appendix, platform));
+
+        final PiPipelineModel model = parseP4Info(p4InfoUrl);
+        return DefaultPiPipeconf.builder()
+                .withId(pipeconfId)
+                .withPipelineModel(model)
+                .addBehaviour(PiPipelineInterpreter.class, FabricInterpreter.class)
+                .addBehaviour(Pipeliner.class, FabricPipeliner.class)
+                .addBehaviour(PortStatisticsDiscovery.class, FabricPortStatisticsDiscovery.class)
+                .addExtension(P4_INFO_TEXT, p4InfoUrl)
+                .addExtension(TOFINO_BIN, tofinoBinUrl)
+                .addExtension(TOFINO_CONTEXT_JSON, contextJsonUrl)
+                .build();
+    }
+
+    private static Collection<PiPipeconf> buildAll() {
+        ImmutableList.Builder<PiPipeconf> builder = ImmutableList.builder();
+        for (String platform : PLATFORMS) {
+            for (String appendix : APPENDICES) {
+                builder.add(buildTofinoPipeconf(platform, appendix));
+            }
+        }
+        return builder.build();
+    }
+
+    private static PiPipelineModel parseP4Info(URL p4InfoUrl) {
+        try {
+            return P4InfoParser.parse(p4InfoUrl);
+        } catch (P4InfoParserException e) {
+            throw new RuntimeException(e);
+        }
+    }
+}
diff --git a/pipelines/fabric-hw/src/main/java/org/onosproject/pipelines/fabric/hw/package-info.java b/pipelines/fabric-hw/src/main/java/org/onosproject/pipelines/fabric/hw/package-info.java
new file mode 100644
index 0000000..361cdd3
--- /dev/null
+++ b/pipelines/fabric-hw/src/main/java/org/onosproject/pipelines/fabric/hw/package-info.java
@@ -0,0 +1,20 @@
+/*
+ * Copyright 2018-present Open Networking Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * CORD underlay fabric pipeline for P4 hardware switches.
+ */
+package org.onosproject.pipelines.fabric.hw;
diff --git a/pipelines/fabric-hw/src/main/resources/Makefile b/pipelines/fabric-hw/src/main/resources/Makefile
new file mode 100644
index 0000000..585c0d2
--- /dev/null
+++ b/pipelines/fabric-hw/src/main/resources/Makefile
@@ -0,0 +1,36 @@
+P4_SRC_DIR=$(ONOS_ROOT)/pipelines/fabric/src/main/resources
+
+MAVERICKS_CPU_PORT=320
+MONTANA_CPU_PORT=192
+
+MAVERICKS_OPTIONS=-DCPU_PORT=$(MAVERICKS_CPU_PORT)
+MONTANA_OPTIONS=-DCPU_PORT=$(MONTANA_CPU_PORT)
+
+all: fabric-tofino fabric-spgw-tofino
+
+fabric-tofino:
+	p4c -x p4-16 -b tofino-v1model-barefoot \
+		-I $(P4_SRC_DIR) \
+		$(MAVERICKS_OPTIONS) -o p4c-out/tofino/fabric/mavericks \
+		--p4runtime-file p4c-out/tofino/fabric/mavericks/fabric.p4info \
+		--p4runtime-format text main.p4
+	p4c -x p4-16 -b tofino-v1model-barefoot \
+		-I $(P4_SRC_DIR) \
+		$(MONTANA_OPTIONS) -o p4c-out/tofino/fabric/montana \
+		--p4runtime-file p4c-out/tofino/fabric/montana/fabric.p4info \
+		--p4runtime-format text main.p4
+
+fabric-spgw-tofino:
+	p4c -x p4-16 -b tofino-v1model-barefoot \
+		-I $(P4_SRC_DIR) \
+		$(MAVERICKS_OPTIONS) -DWITH_SPGW -o p4c-out/tofino/fabric-spgw/mavericks \
+		--p4runtime-file p4c-out/tofino/fabric-spgw/mavericks/fabric.p4info \
+		--p4runtime-format text main.p4
+	p4c -x p4-16 -b tofino-v1model-barefoot \
+		-I $(P4_SRC_DIR) \
+		$(MONTANA_OPTIONS) -DWITH_SPGW -o p4c-out/tofino/fabric-spgw/montana \
+		--p4runtime-file p4c-out/tofino/fabric-spgw/montana/fabric.p4info \
+		--p4runtime-format text main.p4
+
+clean:
+	rm -rf p4c-out/*
diff --git a/pipelines/fabric-hw/src/main/resources/main.p4 b/pipelines/fabric-hw/src/main/resources/main.p4
new file mode 100644
index 0000000..1d7fcdd
--- /dev/null
+++ b/pipelines/fabric-hw/src/main/resources/main.p4
@@ -0,0 +1,19 @@
+/*
+ * Copyright 2017-present Open Networking Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+ #define _PKT_OUT_HDR_ANNOT_ @not_extracted_in_egress
+
+ #include "fabric.p4"
diff --git a/pipelines/fabric-hw/src/main/resources/p4c-out/tofino/fabric/mavericks/context.json b/pipelines/fabric-hw/src/main/resources/p4c-out/tofino/fabric/mavericks/context.json
new file mode 100644
index 0000000..0f49258
--- /dev/null
+++ b/pipelines/fabric-hw/src/main/resources/p4c-out/tofino/fabric/mavericks/context.json
@@ -0,0 +1,41703 @@
+{
+  "build_date": "01/31/18 02:07:27",
+  "compiler_version": "6.0.0-alpha.3",
+  "program_name": "main",
+  "learn_quanta": [],
+  "dynamic_hash_calculations": [],
+  "parser": { "ingress": [], "egress": [] },
+  "phv_allocation": [
+    {
+      "ingress": [
+        {
+          "phv_number": 0,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 1,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 2,
+          "records": [
+            {
+              "position_offset": 80,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 3,
+          "records": [
+            {
+              "position_offset": 68,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 4,
+          "records": [
+            {
+              "position_offset": 33,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 64,
+          "records": [
+            {
+              "position_offset": 45,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 65,
+          "records": [
+            {
+              "position_offset": 44,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 66,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 92,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 89,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 67,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "$bridged_metadata_indicator",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 68,
+          "records": [
+            {
+              "position_offset": 86,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 69,
+          "records": [
+            {
+              "position_offset": 93,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 70,
+          "records": [
+            {
+              "position_offset": 28,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 71,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "$always_deparse",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 40,
+              "field_name": "hasExited_0",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 2,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 41,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 66,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 88,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 94,
+                  "header_name": "packet_out",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 72,
+          "records": [
+            {
+              "position_offset": 39,
+              "field_name": "fabric_metadata.pop_vlan_at_egress",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 97,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 124,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 133,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 128,
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "records": [
+            {
+              "position_offset": 64,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "packet_out.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 60,
+              "field_name": "ig_intr_md_for_tm.drop_ctl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 2,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "records": [
+            {
+              "position_offset": 138,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 134,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 140,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 132,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 133,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 134,
+          "records": [
+            {
+              "position_offset": 31,
+              "field_name": "fabric_metadata.l4_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 135,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 136,
+          "records": [
+            {
+              "position_offset": 136,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 137,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 138,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 139,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.l4_dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 140,
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.original_ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 260,
+          "records": [
+            {
+              "position_offset": 114,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 261,
+          "records": [
+            {
+              "position_offset": 98,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 292,
+          "records": [
+            {
+              "position_offset": 3,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 78,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 293,
+          "records": [
+            {
+              "position_offset": 8,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 67,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 326,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 104,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 42,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 327,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 118,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 329,
+          "records": [
+            {
+              "position_offset": 84,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 330,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "records": [
+            {
+              "position_offset": 108,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 338,
+          "records": [
+            {
+              "position_offset": 122,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 339,
+          "records": [
+            {
+              "position_offset": 102,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 340,
+          "records": [
+            {
+              "position_offset": 120,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "egress": [
+        {
+          "phv_number": 80,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 0,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 26,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 45,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 67,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 73,
+                  "header_name": "packet_in",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 81,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 78,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 105,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 114,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 144,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "eg_intr_md.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 145,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "packet_in.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "packet_in._pad",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 6,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 146,
+          "records": [
+            {
+              "position_offset": 43,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 256,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 257,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "records": [
+            {
+              "position_offset": 59,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "records": [
+            {
+              "position_offset": 47,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 264,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 265,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 288,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 66,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 57,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 289,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 30,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 290,
+          "records": [
+            {
+              "position_offset": 46,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 291,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 296,
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 71,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 68,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "records": [
+            {
+              "position_offset": 65,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 299,
+          "records": [
+            {
+              "position_offset": 72,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 320,
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 115,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 121,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 321,
+          "records": [
+            {
+              "position_offset": 2,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 99,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 322,
+          "records": [
+            {
+              "position_offset": 7,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 323,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 93,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 91,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 85,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 31,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 324,
+          "records": [
+            {
+              "position_offset": 51,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 325,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "records": [
+            {
+              "position_offset": 117,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 335,
+          "records": [
+            {
+              "position_offset": 63,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "records": [
+            {
+              "position_offset": 55,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 33,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 344,
+          "records": [
+            {
+              "position_offset": 103,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 345,
+          "records": [
+            {
+              "position_offset": 83,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 346,
+          "records": [
+            {
+              "position_offset": 101,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "stage_number": 0
+    },
+    {
+      "ingress": [
+        {
+          "phv_number": 0,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 1,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 2,
+          "records": [
+            {
+              "position_offset": 80,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 3,
+          "records": [
+            {
+              "position_offset": 68,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 4,
+          "records": [
+            {
+              "position_offset": 33,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 64,
+          "records": [
+            {
+              "position_offset": 45,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 65,
+          "records": [
+            {
+              "position_offset": 44,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 66,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 92,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 89,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 67,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "$bridged_metadata_indicator",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 68,
+          "records": [
+            {
+              "position_offset": 86,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 69,
+          "records": [
+            {
+              "position_offset": 93,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 70,
+          "records": [
+            {
+              "position_offset": 28,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 71,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "$always_deparse",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 40,
+              "field_name": "hasExited_0",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 2,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 41,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 66,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 88,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 94,
+                  "header_name": "packet_out",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 72,
+          "records": [
+            {
+              "position_offset": 39,
+              "field_name": "fabric_metadata.pop_vlan_at_egress",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 97,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 124,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 133,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 128,
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "records": [
+            {
+              "position_offset": 64,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "packet_out.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 60,
+              "field_name": "ig_intr_md_for_tm.drop_ctl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 2,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "records": [
+            {
+              "position_offset": 138,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 134,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 140,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 132,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 133,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 134,
+          "records": [
+            {
+              "position_offset": 31,
+              "field_name": "fabric_metadata.l4_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 135,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 136,
+          "records": [
+            {
+              "position_offset": 136,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 137,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 138,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 139,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.l4_dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 140,
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.original_ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 260,
+          "records": [
+            {
+              "position_offset": 114,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 261,
+          "records": [
+            {
+              "position_offset": 98,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 292,
+          "records": [
+            {
+              "position_offset": 3,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 78,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 293,
+          "records": [
+            {
+              "position_offset": 8,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 67,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 326,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 104,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 42,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 327,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 118,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 329,
+          "records": [
+            {
+              "position_offset": 84,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 330,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "records": [
+            {
+              "position_offset": 108,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 338,
+          "records": [
+            {
+              "position_offset": 122,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 339,
+          "records": [
+            {
+              "position_offset": 102,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 340,
+          "records": [
+            {
+              "position_offset": 120,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "egress": [
+        {
+          "phv_number": 80,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 0,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 26,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 45,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 67,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 73,
+                  "header_name": "packet_in",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 81,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 78,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 105,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 114,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 144,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "eg_intr_md.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 145,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "packet_in.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "packet_in._pad",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 6,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 146,
+          "records": [
+            {
+              "position_offset": 43,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 256,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 257,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "records": [
+            {
+              "position_offset": 59,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "records": [
+            {
+              "position_offset": 47,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 264,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 265,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 288,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 66,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 57,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 289,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 30,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 290,
+          "records": [
+            {
+              "position_offset": 46,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 291,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 296,
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 71,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 68,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "records": [
+            {
+              "position_offset": 65,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 299,
+          "records": [
+            {
+              "position_offset": 72,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 320,
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 115,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 121,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 321,
+          "records": [
+            {
+              "position_offset": 2,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 99,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 322,
+          "records": [
+            {
+              "position_offset": 7,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 323,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 93,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 91,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 85,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 31,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 324,
+          "records": [
+            {
+              "position_offset": 51,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 325,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "records": [
+            {
+              "position_offset": 117,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 335,
+          "records": [
+            {
+              "position_offset": 63,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "records": [
+            {
+              "position_offset": 55,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 33,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 344,
+          "records": [
+            {
+              "position_offset": 103,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 345,
+          "records": [
+            {
+              "position_offset": 83,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 346,
+          "records": [
+            {
+              "position_offset": 101,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "stage_number": 1
+    },
+    {
+      "ingress": [
+        {
+          "phv_number": 0,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 1,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 2,
+          "records": [
+            {
+              "position_offset": 80,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 3,
+          "records": [
+            {
+              "position_offset": 68,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 4,
+          "records": [
+            {
+              "position_offset": 33,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 64,
+          "records": [
+            {
+              "position_offset": 45,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 65,
+          "records": [
+            {
+              "position_offset": 44,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 66,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 92,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 89,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 67,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "$bridged_metadata_indicator",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 68,
+          "records": [
+            {
+              "position_offset": 86,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 69,
+          "records": [
+            {
+              "position_offset": 93,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 70,
+          "records": [
+            {
+              "position_offset": 28,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 71,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "$always_deparse",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 40,
+              "field_name": "hasExited_0",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 2,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 41,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 66,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 88,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 94,
+                  "header_name": "packet_out",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 72,
+          "records": [
+            {
+              "position_offset": 39,
+              "field_name": "fabric_metadata.pop_vlan_at_egress",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 97,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 124,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 133,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 128,
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "records": [
+            {
+              "position_offset": 64,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "packet_out.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 60,
+              "field_name": "ig_intr_md_for_tm.drop_ctl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 2,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "records": [
+            {
+              "position_offset": 138,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 134,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 140,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 132,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 133,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 134,
+          "records": [
+            {
+              "position_offset": 31,
+              "field_name": "fabric_metadata.l4_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 135,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 136,
+          "records": [
+            {
+              "position_offset": 136,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 137,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 138,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 139,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.l4_dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 140,
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.original_ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 260,
+          "records": [
+            {
+              "position_offset": 114,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 261,
+          "records": [
+            {
+              "position_offset": 98,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 292,
+          "records": [
+            {
+              "position_offset": 3,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 78,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 293,
+          "records": [
+            {
+              "position_offset": 8,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 67,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 326,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 104,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 42,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 327,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 118,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 329,
+          "records": [
+            {
+              "position_offset": 84,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 330,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "records": [
+            {
+              "position_offset": 108,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 338,
+          "records": [
+            {
+              "position_offset": 122,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 339,
+          "records": [
+            {
+              "position_offset": 102,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 340,
+          "records": [
+            {
+              "position_offset": 120,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "egress": [
+        {
+          "phv_number": 80,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 0,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 26,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 45,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 67,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 73,
+                  "header_name": "packet_in",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 81,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 78,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 105,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 114,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 144,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "eg_intr_md.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 145,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "packet_in.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "packet_in._pad",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 6,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 146,
+          "records": [
+            {
+              "position_offset": 43,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 256,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 257,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "records": [
+            {
+              "position_offset": 59,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "records": [
+            {
+              "position_offset": 47,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 264,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 265,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 288,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 66,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 57,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 289,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 30,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 290,
+          "records": [
+            {
+              "position_offset": 46,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 291,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 296,
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 71,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 68,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "records": [
+            {
+              "position_offset": 65,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 299,
+          "records": [
+            {
+              "position_offset": 72,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 320,
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 115,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 121,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 321,
+          "records": [
+            {
+              "position_offset": 2,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 99,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 322,
+          "records": [
+            {
+              "position_offset": 7,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 323,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 93,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 91,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 85,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 31,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 324,
+          "records": [
+            {
+              "position_offset": 51,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 325,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "records": [
+            {
+              "position_offset": 117,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 335,
+          "records": [
+            {
+              "position_offset": 63,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "records": [
+            {
+              "position_offset": 55,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 33,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 344,
+          "records": [
+            {
+              "position_offset": 103,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 345,
+          "records": [
+            {
+              "position_offset": 83,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 346,
+          "records": [
+            {
+              "position_offset": 101,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "stage_number": 2
+    },
+    {
+      "ingress": [
+        {
+          "phv_number": 0,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 1,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 2,
+          "records": [
+            {
+              "position_offset": 80,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 3,
+          "records": [
+            {
+              "position_offset": 68,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 4,
+          "records": [
+            {
+              "position_offset": 33,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 64,
+          "records": [
+            {
+              "position_offset": 45,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 65,
+          "records": [
+            {
+              "position_offset": 44,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 66,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 92,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 89,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 67,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "$bridged_metadata_indicator",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 68,
+          "records": [
+            {
+              "position_offset": 86,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 69,
+          "records": [
+            {
+              "position_offset": 93,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 70,
+          "records": [
+            {
+              "position_offset": 28,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 71,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "$always_deparse",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 40,
+              "field_name": "hasExited_0",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 2,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 41,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 66,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 88,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 94,
+                  "header_name": "packet_out",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 72,
+          "records": [
+            {
+              "position_offset": 39,
+              "field_name": "fabric_metadata.pop_vlan_at_egress",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 97,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 124,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 133,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 128,
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "records": [
+            {
+              "position_offset": 64,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "packet_out.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 60,
+              "field_name": "ig_intr_md_for_tm.drop_ctl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 2,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "records": [
+            {
+              "position_offset": 138,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 134,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 140,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 132,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 133,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 134,
+          "records": [
+            {
+              "position_offset": 31,
+              "field_name": "fabric_metadata.l4_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 135,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 136,
+          "records": [
+            {
+              "position_offset": 136,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 137,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 138,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 139,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.l4_dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 140,
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.original_ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 260,
+          "records": [
+            {
+              "position_offset": 114,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 261,
+          "records": [
+            {
+              "position_offset": 98,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 292,
+          "records": [
+            {
+              "position_offset": 3,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 78,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 293,
+          "records": [
+            {
+              "position_offset": 8,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 67,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 326,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 104,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 42,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 327,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 118,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 329,
+          "records": [
+            {
+              "position_offset": 84,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 330,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "records": [
+            {
+              "position_offset": 108,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 338,
+          "records": [
+            {
+              "position_offset": 122,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 339,
+          "records": [
+            {
+              "position_offset": 102,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 340,
+          "records": [
+            {
+              "position_offset": 120,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "egress": [
+        {
+          "phv_number": 80,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 0,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 26,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 45,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 67,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 73,
+                  "header_name": "packet_in",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 81,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 78,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 105,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 114,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 144,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "eg_intr_md.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 145,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "packet_in.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "packet_in._pad",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 6,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 146,
+          "records": [
+            {
+              "position_offset": 43,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 256,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 257,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "records": [
+            {
+              "position_offset": 59,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "records": [
+            {
+              "position_offset": 47,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 264,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 265,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 288,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 66,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 57,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 289,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 30,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 290,
+          "records": [
+            {
+              "position_offset": 46,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 291,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 296,
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 71,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 68,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "records": [
+            {
+              "position_offset": 65,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 299,
+          "records": [
+            {
+              "position_offset": 72,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 320,
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 115,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 121,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 321,
+          "records": [
+            {
+              "position_offset": 2,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 99,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 322,
+          "records": [
+            {
+              "position_offset": 7,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 323,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 93,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 91,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 85,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 31,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 324,
+          "records": [
+            {
+              "position_offset": 51,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 325,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "records": [
+            {
+              "position_offset": 117,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 335,
+          "records": [
+            {
+              "position_offset": 63,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "records": [
+            {
+              "position_offset": 55,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 33,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 344,
+          "records": [
+            {
+              "position_offset": 103,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 345,
+          "records": [
+            {
+              "position_offset": 83,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 346,
+          "records": [
+            {
+              "position_offset": 101,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "stage_number": 3
+    },
+    {
+      "ingress": [
+        {
+          "phv_number": 0,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 1,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 2,
+          "records": [
+            {
+              "position_offset": 80,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 3,
+          "records": [
+            {
+              "position_offset": 68,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 4,
+          "records": [
+            {
+              "position_offset": 33,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 64,
+          "records": [
+            {
+              "position_offset": 45,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 65,
+          "records": [
+            {
+              "position_offset": 44,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 66,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 92,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 89,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 67,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "$bridged_metadata_indicator",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 68,
+          "records": [
+            {
+              "position_offset": 86,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 69,
+          "records": [
+            {
+              "position_offset": 93,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 70,
+          "records": [
+            {
+              "position_offset": 28,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 71,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "$always_deparse",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 40,
+              "field_name": "hasExited_0",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 2,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 41,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 66,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 88,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 94,
+                  "header_name": "packet_out",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 72,
+          "records": [
+            {
+              "position_offset": 39,
+              "field_name": "fabric_metadata.pop_vlan_at_egress",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 97,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 124,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 133,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 128,
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "records": [
+            {
+              "position_offset": 64,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "packet_out.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 60,
+              "field_name": "ig_intr_md_for_tm.drop_ctl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 2,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "records": [
+            {
+              "position_offset": 138,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 134,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 140,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 132,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 133,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 134,
+          "records": [
+            {
+              "position_offset": 31,
+              "field_name": "fabric_metadata.l4_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 135,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 136,
+          "records": [
+            {
+              "position_offset": 136,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 137,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 138,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 139,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.l4_dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 140,
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.original_ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 260,
+          "records": [
+            {
+              "position_offset": 114,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 261,
+          "records": [
+            {
+              "position_offset": 98,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 292,
+          "records": [
+            {
+              "position_offset": 3,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 78,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 293,
+          "records": [
+            {
+              "position_offset": 8,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 67,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 326,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 104,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 42,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 327,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 118,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 329,
+          "records": [
+            {
+              "position_offset": 84,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 330,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "records": [
+            {
+              "position_offset": 108,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 338,
+          "records": [
+            {
+              "position_offset": 122,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 339,
+          "records": [
+            {
+              "position_offset": 102,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 340,
+          "records": [
+            {
+              "position_offset": 120,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "egress": [
+        {
+          "phv_number": 80,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 0,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 26,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 45,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 67,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 73,
+                  "header_name": "packet_in",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 81,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 78,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 105,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 114,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 144,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "eg_intr_md.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 145,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "packet_in.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "packet_in._pad",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 6,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 146,
+          "records": [
+            {
+              "position_offset": 43,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 256,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 257,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "records": [
+            {
+              "position_offset": 59,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "records": [
+            {
+              "position_offset": 47,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 264,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 265,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 288,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 66,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 57,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 289,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 30,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 290,
+          "records": [
+            {
+              "position_offset": 46,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 291,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 296,
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 71,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 68,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "records": [
+            {
+              "position_offset": 65,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 299,
+          "records": [
+            {
+              "position_offset": 72,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 320,
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 115,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 121,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 321,
+          "records": [
+            {
+              "position_offset": 2,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 99,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 322,
+          "records": [
+            {
+              "position_offset": 7,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 323,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 93,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 91,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 85,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 31,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 324,
+          "records": [
+            {
+              "position_offset": 51,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 325,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "records": [
+            {
+              "position_offset": 117,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 335,
+          "records": [
+            {
+              "position_offset": 63,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "records": [
+            {
+              "position_offset": 55,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 33,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 344,
+          "records": [
+            {
+              "position_offset": 103,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 345,
+          "records": [
+            {
+              "position_offset": 83,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 346,
+          "records": [
+            {
+              "position_offset": 101,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "stage_number": 4
+    },
+    {
+      "ingress": [
+        {
+          "phv_number": 0,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 1,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 2,
+          "records": [
+            {
+              "position_offset": 80,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 3,
+          "records": [
+            {
+              "position_offset": 68,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 4,
+          "records": [
+            {
+              "position_offset": 33,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 64,
+          "records": [
+            {
+              "position_offset": 45,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 65,
+          "records": [
+            {
+              "position_offset": 44,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 66,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 92,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 89,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 67,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "$bridged_metadata_indicator",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 68,
+          "records": [
+            {
+              "position_offset": 86,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 69,
+          "records": [
+            {
+              "position_offset": 93,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 70,
+          "records": [
+            {
+              "position_offset": 28,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 71,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "$always_deparse",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 40,
+              "field_name": "hasExited_0",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 2,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 41,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 66,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 88,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 94,
+                  "header_name": "packet_out",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 72,
+          "records": [
+            {
+              "position_offset": 39,
+              "field_name": "fabric_metadata.pop_vlan_at_egress",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 97,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 124,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 133,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 128,
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "records": [
+            {
+              "position_offset": 64,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "packet_out.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 60,
+              "field_name": "ig_intr_md_for_tm.drop_ctl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 2,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "records": [
+            {
+              "position_offset": 138,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 134,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 140,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 132,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 133,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 134,
+          "records": [
+            {
+              "position_offset": 31,
+              "field_name": "fabric_metadata.l4_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 135,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 136,
+          "records": [
+            {
+              "position_offset": 136,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 137,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 138,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 139,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.l4_dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 140,
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.original_ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 260,
+          "records": [
+            {
+              "position_offset": 114,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 261,
+          "records": [
+            {
+              "position_offset": 98,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 292,
+          "records": [
+            {
+              "position_offset": 3,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 78,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 293,
+          "records": [
+            {
+              "position_offset": 8,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 67,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 326,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 104,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 42,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 327,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 118,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 329,
+          "records": [
+            {
+              "position_offset": 84,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 330,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "records": [
+            {
+              "position_offset": 108,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 338,
+          "records": [
+            {
+              "position_offset": 122,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 339,
+          "records": [
+            {
+              "position_offset": 102,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 340,
+          "records": [
+            {
+              "position_offset": 120,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "egress": [
+        {
+          "phv_number": 80,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 0,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 26,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 45,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 67,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 73,
+                  "header_name": "packet_in",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 81,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 78,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 105,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 114,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 144,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "eg_intr_md.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 145,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "packet_in.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "packet_in._pad",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 6,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 146,
+          "records": [
+            {
+              "position_offset": 43,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 256,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 257,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "records": [
+            {
+              "position_offset": 59,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "records": [
+            {
+              "position_offset": 47,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 264,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 265,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 288,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 66,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 57,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 289,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 30,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 290,
+          "records": [
+            {
+              "position_offset": 46,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 291,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 296,
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 71,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 68,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "records": [
+            {
+              "position_offset": 65,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 299,
+          "records": [
+            {
+              "position_offset": 72,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 320,
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 115,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 121,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 321,
+          "records": [
+            {
+              "position_offset": 2,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 99,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 322,
+          "records": [
+            {
+              "position_offset": 7,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 323,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 93,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 91,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 85,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 31,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 324,
+          "records": [
+            {
+              "position_offset": 51,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 325,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "records": [
+            {
+              "position_offset": 117,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 335,
+          "records": [
+            {
+              "position_offset": 63,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "records": [
+            {
+              "position_offset": 55,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 33,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 344,
+          "records": [
+            {
+              "position_offset": 103,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 345,
+          "records": [
+            {
+              "position_offset": 83,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 346,
+          "records": [
+            {
+              "position_offset": 101,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "stage_number": 5
+    },
+    {
+      "ingress": [
+        {
+          "phv_number": 0,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 1,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 2,
+          "records": [
+            {
+              "position_offset": 80,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 3,
+          "records": [
+            {
+              "position_offset": 68,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 4,
+          "records": [
+            {
+              "position_offset": 33,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 64,
+          "records": [
+            {
+              "position_offset": 45,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 65,
+          "records": [
+            {
+              "position_offset": 44,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 66,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 92,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 89,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 67,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "$bridged_metadata_indicator",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 68,
+          "records": [
+            {
+              "position_offset": 86,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 69,
+          "records": [
+            {
+              "position_offset": 93,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 70,
+          "records": [
+            {
+              "position_offset": 28,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 71,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "$always_deparse",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 40,
+              "field_name": "hasExited_0",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 2,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 41,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 66,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 88,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 94,
+                  "header_name": "packet_out",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 72,
+          "records": [
+            {
+              "position_offset": 39,
+              "field_name": "fabric_metadata.pop_vlan_at_egress",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 97,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 124,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 133,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 128,
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "records": [
+            {
+              "position_offset": 64,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "packet_out.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 60,
+              "field_name": "ig_intr_md_for_tm.drop_ctl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 2,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "records": [
+            {
+              "position_offset": 138,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 134,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 140,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 132,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 133,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 134,
+          "records": [
+            {
+              "position_offset": 31,
+              "field_name": "fabric_metadata.l4_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 135,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 136,
+          "records": [
+            {
+              "position_offset": 136,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 137,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 138,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 139,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.l4_dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 140,
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.original_ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 260,
+          "records": [
+            {
+              "position_offset": 114,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 261,
+          "records": [
+            {
+              "position_offset": 98,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 292,
+          "records": [
+            {
+              "position_offset": 3,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 78,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 293,
+          "records": [
+            {
+              "position_offset": 8,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 67,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 326,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 104,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 42,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 327,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 118,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 329,
+          "records": [
+            {
+              "position_offset": 84,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 330,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "records": [
+            {
+              "position_offset": 108,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 338,
+          "records": [
+            {
+              "position_offset": 122,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 339,
+          "records": [
+            {
+              "position_offset": 102,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 340,
+          "records": [
+            {
+              "position_offset": 120,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "egress": [
+        {
+          "phv_number": 80,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 0,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 26,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 45,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 67,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 73,
+                  "header_name": "packet_in",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 81,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 78,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 105,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 114,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 144,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "eg_intr_md.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 145,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "packet_in.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "packet_in._pad",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 6,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 146,
+          "records": [
+            {
+              "position_offset": 43,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 256,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 257,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "records": [
+            {
+              "position_offset": 59,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "records": [
+            {
+              "position_offset": 47,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 264,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 265,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 288,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 66,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 57,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 289,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 30,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 290,
+          "records": [
+            {
+              "position_offset": 46,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 291,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 296,
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 71,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 68,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "records": [
+            {
+              "position_offset": 65,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 299,
+          "records": [
+            {
+              "position_offset": 72,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 320,
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 115,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 121,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 321,
+          "records": [
+            {
+              "position_offset": 2,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 99,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 322,
+          "records": [
+            {
+              "position_offset": 7,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 323,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 93,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 91,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 85,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 31,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 324,
+          "records": [
+            {
+              "position_offset": 51,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 325,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "records": [
+            {
+              "position_offset": 117,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 335,
+          "records": [
+            {
+              "position_offset": 63,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "records": [
+            {
+              "position_offset": 55,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 33,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 344,
+          "records": [
+            {
+              "position_offset": 103,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 345,
+          "records": [
+            {
+              "position_offset": 83,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 346,
+          "records": [
+            {
+              "position_offset": 101,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "stage_number": 6
+    },
+    {
+      "ingress": [
+        {
+          "phv_number": 0,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 1,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 2,
+          "records": [
+            {
+              "position_offset": 80,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 3,
+          "records": [
+            {
+              "position_offset": 68,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 4,
+          "records": [
+            {
+              "position_offset": 33,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 64,
+          "records": [
+            {
+              "position_offset": 45,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 65,
+          "records": [
+            {
+              "position_offset": 44,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 66,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 92,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 89,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 67,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "$bridged_metadata_indicator",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 68,
+          "records": [
+            {
+              "position_offset": 86,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 69,
+          "records": [
+            {
+              "position_offset": 93,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 70,
+          "records": [
+            {
+              "position_offset": 28,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 71,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "$always_deparse",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 40,
+              "field_name": "hasExited_0",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 2,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 41,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 66,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 88,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 94,
+                  "header_name": "packet_out",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 72,
+          "records": [
+            {
+              "position_offset": 39,
+              "field_name": "fabric_metadata.pop_vlan_at_egress",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 97,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 124,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 133,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 128,
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "records": [
+            {
+              "position_offset": 64,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "packet_out.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 60,
+              "field_name": "ig_intr_md_for_tm.drop_ctl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 2,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "records": [
+            {
+              "position_offset": 138,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 134,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 140,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 132,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 133,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 134,
+          "records": [
+            {
+              "position_offset": 31,
+              "field_name": "fabric_metadata.l4_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 135,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 136,
+          "records": [
+            {
+              "position_offset": 136,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 137,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 138,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 139,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.l4_dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 140,
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.original_ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 260,
+          "records": [
+            {
+              "position_offset": 114,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 261,
+          "records": [
+            {
+              "position_offset": 98,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 292,
+          "records": [
+            {
+              "position_offset": 3,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 78,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 293,
+          "records": [
+            {
+              "position_offset": 8,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 67,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 326,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 104,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 42,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 327,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 118,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 329,
+          "records": [
+            {
+              "position_offset": 84,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 330,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "records": [
+            {
+              "position_offset": 108,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 338,
+          "records": [
+            {
+              "position_offset": 122,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 339,
+          "records": [
+            {
+              "position_offset": 102,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 340,
+          "records": [
+            {
+              "position_offset": 120,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "egress": [
+        {
+          "phv_number": 80,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 0,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 26,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 45,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 67,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 73,
+                  "header_name": "packet_in",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 81,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 78,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 105,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 114,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 144,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "eg_intr_md.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 145,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "packet_in.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "packet_in._pad",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 6,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 146,
+          "records": [
+            {
+              "position_offset": 43,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 256,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 257,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "records": [
+            {
+              "position_offset": 59,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "records": [
+            {
+              "position_offset": 47,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 264,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 265,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 288,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 66,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 57,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 289,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 30,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 290,
+          "records": [
+            {
+              "position_offset": 46,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 291,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 296,
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 71,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 68,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "records": [
+            {
+              "position_offset": 65,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 299,
+          "records": [
+            {
+              "position_offset": 72,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 320,
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 115,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 121,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 321,
+          "records": [
+            {
+              "position_offset": 2,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 99,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 322,
+          "records": [
+            {
+              "position_offset": 7,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 323,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 93,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 91,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 85,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 31,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 324,
+          "records": [
+            {
+              "position_offset": 51,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 325,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "records": [
+            {
+              "position_offset": 117,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 335,
+          "records": [
+            {
+              "position_offset": 63,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "records": [
+            {
+              "position_offset": 55,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 33,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 344,
+          "records": [
+            {
+              "position_offset": 103,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 345,
+          "records": [
+            {
+              "position_offset": 83,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 346,
+          "records": [
+            {
+              "position_offset": 101,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "stage_number": 7
+    },
+    {
+      "ingress": [
+        {
+          "phv_number": 0,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 1,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 2,
+          "records": [
+            {
+              "position_offset": 80,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 3,
+          "records": [
+            {
+              "position_offset": 68,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 4,
+          "records": [
+            {
+              "position_offset": 33,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 64,
+          "records": [
+            {
+              "position_offset": 45,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 65,
+          "records": [
+            {
+              "position_offset": 44,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 66,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 92,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 89,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 67,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "$bridged_metadata_indicator",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 68,
+          "records": [
+            {
+              "position_offset": 86,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 69,
+          "records": [
+            {
+              "position_offset": 93,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 70,
+          "records": [
+            {
+              "position_offset": 28,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 71,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "$always_deparse",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 40,
+              "field_name": "hasExited_0",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 2,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 41,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 66,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 88,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 94,
+                  "header_name": "packet_out",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 72,
+          "records": [
+            {
+              "position_offset": 39,
+              "field_name": "fabric_metadata.pop_vlan_at_egress",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 97,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 124,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 133,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 128,
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "records": [
+            {
+              "position_offset": 64,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "packet_out.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 60,
+              "field_name": "ig_intr_md_for_tm.drop_ctl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 2,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "records": [
+            {
+              "position_offset": 138,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 134,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 140,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 132,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 133,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 134,
+          "records": [
+            {
+              "position_offset": 31,
+              "field_name": "fabric_metadata.l4_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 135,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 136,
+          "records": [
+            {
+              "position_offset": 136,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 137,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 138,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 139,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.l4_dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 140,
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.original_ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 260,
+          "records": [
+            {
+              "position_offset": 114,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 261,
+          "records": [
+            {
+              "position_offset": 98,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 292,
+          "records": [
+            {
+              "position_offset": 3,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 78,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 293,
+          "records": [
+            {
+              "position_offset": 8,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 67,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 326,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 104,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 42,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 327,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 118,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 329,
+          "records": [
+            {
+              "position_offset": 84,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 330,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "records": [
+            {
+              "position_offset": 108,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 338,
+          "records": [
+            {
+              "position_offset": 122,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 339,
+          "records": [
+            {
+              "position_offset": 102,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 340,
+          "records": [
+            {
+              "position_offset": 120,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "egress": [
+        {
+          "phv_number": 80,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 0,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 26,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 45,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 67,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 73,
+                  "header_name": "packet_in",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 81,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 78,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 105,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 114,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 144,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "eg_intr_md.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 145,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "packet_in.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "packet_in._pad",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 6,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 146,
+          "records": [
+            {
+              "position_offset": 43,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 256,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 257,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "records": [
+            {
+              "position_offset": 59,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "records": [
+            {
+              "position_offset": 47,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 264,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 265,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 288,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 66,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 57,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 289,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 30,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 290,
+          "records": [
+            {
+              "position_offset": 46,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 291,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 296,
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 71,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 68,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "records": [
+            {
+              "position_offset": 65,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 299,
+          "records": [
+            {
+              "position_offset": 72,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 320,
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 115,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 121,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 321,
+          "records": [
+            {
+              "position_offset": 2,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 99,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 322,
+          "records": [
+            {
+              "position_offset": 7,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 323,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 93,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 91,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 85,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 31,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 324,
+          "records": [
+            {
+              "position_offset": 51,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 325,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "records": [
+            {
+              "position_offset": 117,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 335,
+          "records": [
+            {
+              "position_offset": 63,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "records": [
+            {
+              "position_offset": 55,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 33,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 344,
+          "records": [
+            {
+              "position_offset": 103,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 345,
+          "records": [
+            {
+              "position_offset": 83,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 346,
+          "records": [
+            {
+              "position_offset": 101,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "stage_number": 8
+    },
+    {
+      "ingress": [
+        {
+          "phv_number": 0,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 1,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 2,
+          "records": [
+            {
+              "position_offset": 80,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 3,
+          "records": [
+            {
+              "position_offset": 68,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 4,
+          "records": [
+            {
+              "position_offset": 33,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 64,
+          "records": [
+            {
+              "position_offset": 45,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 65,
+          "records": [
+            {
+              "position_offset": 44,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 66,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 92,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 89,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 67,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "$bridged_metadata_indicator",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 68,
+          "records": [
+            {
+              "position_offset": 86,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 69,
+          "records": [
+            {
+              "position_offset": 93,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 70,
+          "records": [
+            {
+              "position_offset": 28,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 71,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "$always_deparse",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 40,
+              "field_name": "hasExited_0",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 2,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 41,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 66,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 88,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 94,
+                  "header_name": "packet_out",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 72,
+          "records": [
+            {
+              "position_offset": 39,
+              "field_name": "fabric_metadata.pop_vlan_at_egress",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 97,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 124,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 133,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 128,
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "records": [
+            {
+              "position_offset": 64,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "packet_out.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 60,
+              "field_name": "ig_intr_md_for_tm.drop_ctl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 2,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "records": [
+            {
+              "position_offset": 138,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 134,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 140,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 132,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 133,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 134,
+          "records": [
+            {
+              "position_offset": 31,
+              "field_name": "fabric_metadata.l4_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 135,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 136,
+          "records": [
+            {
+              "position_offset": 136,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 137,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 138,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 139,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.l4_dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 140,
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.original_ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 260,
+          "records": [
+            {
+              "position_offset": 114,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 261,
+          "records": [
+            {
+              "position_offset": 98,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 292,
+          "records": [
+            {
+              "position_offset": 3,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 78,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 293,
+          "records": [
+            {
+              "position_offset": 8,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 67,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 326,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 104,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 42,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 327,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 118,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 329,
+          "records": [
+            {
+              "position_offset": 84,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 330,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "records": [
+            {
+              "position_offset": 108,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 338,
+          "records": [
+            {
+              "position_offset": 122,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 339,
+          "records": [
+            {
+              "position_offset": 102,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 340,
+          "records": [
+            {
+              "position_offset": 120,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "egress": [
+        {
+          "phv_number": 80,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 0,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 26,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 45,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 67,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 73,
+                  "header_name": "packet_in",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 81,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 78,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 105,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 114,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 144,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "eg_intr_md.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 145,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "packet_in.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "packet_in._pad",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 6,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 146,
+          "records": [
+            {
+              "position_offset": 43,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 256,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 257,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "records": [
+            {
+              "position_offset": 59,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "records": [
+            {
+              "position_offset": 47,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 264,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 265,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 288,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 66,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 57,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 289,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 30,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 290,
+          "records": [
+            {
+              "position_offset": 46,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 291,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 296,
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 71,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 68,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "records": [
+            {
+              "position_offset": 65,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 299,
+          "records": [
+            {
+              "position_offset": 72,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 320,
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 115,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 121,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 321,
+          "records": [
+            {
+              "position_offset": 2,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 99,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 322,
+          "records": [
+            {
+              "position_offset": 7,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 323,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 93,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 91,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 85,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 31,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 324,
+          "records": [
+            {
+              "position_offset": 51,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 325,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "records": [
+            {
+              "position_offset": 117,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 335,
+          "records": [
+            {
+              "position_offset": 63,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "records": [
+            {
+              "position_offset": 55,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 33,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 344,
+          "records": [
+            {
+              "position_offset": 103,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 345,
+          "records": [
+            {
+              "position_offset": 83,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 346,
+          "records": [
+            {
+              "position_offset": 101,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "stage_number": 9
+    },
+    {
+      "ingress": [
+        {
+          "phv_number": 0,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 1,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 2,
+          "records": [
+            {
+              "position_offset": 80,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 3,
+          "records": [
+            {
+              "position_offset": 68,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 4,
+          "records": [
+            {
+              "position_offset": 33,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 64,
+          "records": [
+            {
+              "position_offset": 45,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 65,
+          "records": [
+            {
+              "position_offset": 44,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 66,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 92,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 89,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 67,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "$bridged_metadata_indicator",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 68,
+          "records": [
+            {
+              "position_offset": 86,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 69,
+          "records": [
+            {
+              "position_offset": 93,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 70,
+          "records": [
+            {
+              "position_offset": 28,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 71,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "$always_deparse",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 40,
+              "field_name": "hasExited_0",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 2,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 41,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 66,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 88,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 94,
+                  "header_name": "packet_out",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 72,
+          "records": [
+            {
+              "position_offset": 39,
+              "field_name": "fabric_metadata.pop_vlan_at_egress",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 97,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 124,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 133,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 128,
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "records": [
+            {
+              "position_offset": 64,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "packet_out.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 60,
+              "field_name": "ig_intr_md_for_tm.drop_ctl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 2,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "records": [
+            {
+              "position_offset": 138,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 134,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 140,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 132,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 133,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 134,
+          "records": [
+            {
+              "position_offset": 31,
+              "field_name": "fabric_metadata.l4_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 135,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 136,
+          "records": [
+            {
+              "position_offset": 136,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 137,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 138,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 139,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.l4_dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 140,
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.original_ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 260,
+          "records": [
+            {
+              "position_offset": 114,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 261,
+          "records": [
+            {
+              "position_offset": 98,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 292,
+          "records": [
+            {
+              "position_offset": 3,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 78,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 293,
+          "records": [
+            {
+              "position_offset": 8,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 67,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 326,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 104,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 42,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 327,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 118,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 329,
+          "records": [
+            {
+              "position_offset": 84,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 330,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "records": [
+            {
+              "position_offset": 108,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 338,
+          "records": [
+            {
+              "position_offset": 122,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 339,
+          "records": [
+            {
+              "position_offset": 102,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 340,
+          "records": [
+            {
+              "position_offset": 120,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "egress": [
+        {
+          "phv_number": 80,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 0,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 26,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 45,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 67,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 73,
+                  "header_name": "packet_in",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 81,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 78,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 105,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 114,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 144,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "eg_intr_md.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 145,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "packet_in.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "packet_in._pad",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 6,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 146,
+          "records": [
+            {
+              "position_offset": 43,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 256,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 257,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "records": [
+            {
+              "position_offset": 59,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "records": [
+            {
+              "position_offset": 47,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 264,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 265,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 288,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 66,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 57,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 289,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 30,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 290,
+          "records": [
+            {
+              "position_offset": 46,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 291,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 296,
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 71,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 68,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "records": [
+            {
+              "position_offset": 65,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 299,
+          "records": [
+            {
+              "position_offset": 72,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 320,
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 115,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 121,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 321,
+          "records": [
+            {
+              "position_offset": 2,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 99,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 322,
+          "records": [
+            {
+              "position_offset": 7,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 323,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 93,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 91,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 85,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 31,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 324,
+          "records": [
+            {
+              "position_offset": 51,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 325,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "records": [
+            {
+              "position_offset": 117,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 335,
+          "records": [
+            {
+              "position_offset": 63,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "records": [
+            {
+              "position_offset": 55,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 33,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 344,
+          "records": [
+            {
+              "position_offset": 103,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 345,
+          "records": [
+            {
+              "position_offset": 83,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 346,
+          "records": [
+            {
+              "position_offset": 101,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "stage_number": 10
+    },
+    {
+      "ingress": [
+        {
+          "phv_number": 0,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 1,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 2,
+          "records": [
+            {
+              "position_offset": 80,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 3,
+          "records": [
+            {
+              "position_offset": 68,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 4,
+          "records": [
+            {
+              "position_offset": 33,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 64,
+          "records": [
+            {
+              "position_offset": 45,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 65,
+          "records": [
+            {
+              "position_offset": 44,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 66,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 92,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 89,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 67,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "$bridged_metadata_indicator",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 68,
+          "records": [
+            {
+              "position_offset": 86,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 69,
+          "records": [
+            {
+              "position_offset": 93,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 70,
+          "records": [
+            {
+              "position_offset": 28,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 71,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "$always_deparse",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 40,
+              "field_name": "hasExited_0",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 2,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 41,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 66,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 88,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 94,
+                  "header_name": "packet_out",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 72,
+          "records": [
+            {
+              "position_offset": 39,
+              "field_name": "fabric_metadata.pop_vlan_at_egress",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 97,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 124,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 133,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 128,
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "records": [
+            {
+              "position_offset": 64,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "packet_out.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 60,
+              "field_name": "ig_intr_md_for_tm.drop_ctl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 2,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "records": [
+            {
+              "position_offset": 138,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 134,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 140,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 132,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 133,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 134,
+          "records": [
+            {
+              "position_offset": 31,
+              "field_name": "fabric_metadata.l4_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 135,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 136,
+          "records": [
+            {
+              "position_offset": 136,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 137,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 138,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 139,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.l4_dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 140,
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.original_ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 260,
+          "records": [
+            {
+              "position_offset": 114,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 261,
+          "records": [
+            {
+              "position_offset": 98,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 292,
+          "records": [
+            {
+              "position_offset": 3,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 78,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 293,
+          "records": [
+            {
+              "position_offset": 8,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 67,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 326,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 104,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 42,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 327,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 118,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 329,
+          "records": [
+            {
+              "position_offset": 84,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 330,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "records": [
+            {
+              "position_offset": 108,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 338,
+          "records": [
+            {
+              "position_offset": 122,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 339,
+          "records": [
+            {
+              "position_offset": 102,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 340,
+          "records": [
+            {
+              "position_offset": 120,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "egress": [
+        {
+          "phv_number": 80,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 0,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 26,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 45,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 67,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 73,
+                  "header_name": "packet_in",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 81,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 78,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 105,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 114,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 144,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "eg_intr_md.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 145,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "packet_in.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "packet_in._pad",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 6,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 146,
+          "records": [
+            {
+              "position_offset": 43,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 256,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 257,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "records": [
+            {
+              "position_offset": 59,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "records": [
+            {
+              "position_offset": 47,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 264,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 265,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 288,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 66,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 57,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 289,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 30,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 290,
+          "records": [
+            {
+              "position_offset": 46,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 291,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 296,
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 71,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 68,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "records": [
+            {
+              "position_offset": 65,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 299,
+          "records": [
+            {
+              "position_offset": 72,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 320,
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 115,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 121,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 321,
+          "records": [
+            {
+              "position_offset": 2,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 99,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 322,
+          "records": [
+            {
+              "position_offset": 7,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 323,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 93,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 91,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 85,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 31,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 324,
+          "records": [
+            {
+              "position_offset": 51,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 325,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "records": [
+            {
+              "position_offset": 117,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 335,
+          "records": [
+            {
+              "position_offset": 63,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "records": [
+            {
+              "position_offset": 55,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 33,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 344,
+          "records": [
+            {
+              "position_offset": 103,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 345,
+          "records": [
+            {
+              "position_offset": 83,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 346,
+          "records": [
+            {
+              "position_offset": 101,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "stage_number": 11
+    }
+  ],
+  "tables": [
+    {
+      "direction": "ingress",
+      "handle": 16777217,
+      "name": "tbl_act",
+      "table_type": "match",
+      "size": 1,
+      "preferred_match_type": "exact",
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 0,
+            "size": 1,
+            "stage_table_type": "match_with_no_key",
+            "logical_table_id": 0,
+            "has_attached_gateway": true,
+            "memory_resource_allocation": null,
+            "default_next_table": 255,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 0,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 0
+              }
+            ],
+            "result_physical_buses": [ 1 ],
+            "action_format": [
+              {
+                "action_name": "act_0",
+                "action_handle": 536870914,
+                "table_name": "tbl_act_8",
+                "next_table": 0,
+                "next_table_full": 16,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 64,
+                "immediate_fields": []
+              }
+            ],
+            "hash_functions": []
+          }
+        ],
+        "match_type": "match_with_no_key",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "act_0",
+          "handle": 536870914,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "hasExited_0" },
+              "src": [
+                { "type": "immmediate", "name": "0" },
+                { "type": "phv", "name": "B7" }
+              ]
+            }
+          ]
+        }
+      ],
+      "default_action_handle": 536870914,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "performs_hash_action": false,
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": []
+    },
+    {
+      "direction": "egress",
+      "handle": 16777218,
+      "name": "tbl_act_6",
+      "table_type": "match",
+      "size": 1,
+      "preferred_match_type": "exact",
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 0,
+            "size": 1,
+            "stage_table_type": "match_with_no_key",
+            "logical_table_id": 1,
+            "has_attached_gateway": true,
+            "memory_resource_allocation": null,
+            "default_next_table": 255,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 0,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 0
+              }
+            ],
+            "result_physical_buses": [ 0 ],
+            "action_format": [
+              {
+                "action_name": "act_6",
+                "action_handle": 536870915,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 255,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 64,
+                "immediate_fields": []
+              }
+            ],
+            "hash_functions": []
+          }
+        ],
+        "match_type": "match_with_no_key",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "act_6",
+          "handle": 536870915,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "packet_in.$valid" },
+              "src": [
+                { "type": "immmediate", "name": "1" },
+                { "type": "phv", "name": "B16" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "packet_in.ingress_port" },
+              "src": [
+                { "type": "phv", "name": "H18" },
+                { "type": "phv", "name": "H17" }
+              ]
+            }
+          ]
+        }
+      ],
+      "default_action_handle": 536870915,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "performs_hash_action": false,
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": []
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777219,
+      "name": "tbl_act_0",
+      "table_type": "match",
+      "size": 1,
+      "preferred_match_type": "exact",
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 1,
+            "size": 1,
+            "stage_table_type": "match_with_no_key",
+            "logical_table_id": 0,
+            "has_attached_gateway": true,
+            "memory_resource_allocation": null,
+            "default_next_table": 255,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 0,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 0
+              }
+            ],
+            "result_physical_buses": [ 0 ],
+            "action_format": [
+              {
+                "action_name": "act",
+                "action_handle": 536870916,
+                "table_name": "filtering_ingress_port_vlan",
+                "next_table": 0,
+                "next_table_full": 32,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 64,
+                "immediate_fields": []
+              }
+            ],
+            "hash_functions": []
+          }
+        ],
+        "match_type": "match_with_no_key",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "act",
+          "handle": 536870916,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "phv", "name": "H2" },
+                { "type": "phv", "name": "H1" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "hasExited_0" },
+              "src": [
+                { "type": "immmediate", "name": "1" },
+                { "type": "phv", "name": "B7" }
+              ]
+            }
+          ]
+        }
+      ],
+      "default_action_handle": 536870916,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "performs_hash_action": false,
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": []
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777220,
+      "name": "filtering.ingress_port_vlan",
+      "table_type": "match",
+      "size": 512,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 2,
+            "size": 512,
+            "stage_table_type": "ternary_match",
+            "logical_table_id": 0,
+            "has_attached_gateway": true,
+            "pack_format": [
+              {
+                "table_word_width": 47,
+                "memory_word_width": 47,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1,
+                "entries": [
+                  {
+                    "entry_number": 0,
+                    "fields": [
+                      {
+                        "field_name": "--tcam_payload_0--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--version--",
+                        "lsb_mem_word_offset": 43,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "version",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "--tcam_parity_0--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "ig_intr_md.ingress_port",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 9
+                      },
+                      {
+                        "field_name": "vlan_tag.vlan_id",
+                        "lsb_mem_word_offset": 17,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 12
+                      },
+                      {
+                        "field_name": "vlan_tag",
+                        "lsb_mem_word_offset": 35,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 1
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "memory_resource_allocation": {
+              "memory_type": "tcam",
+              "memory_units_and_vpns": [ { "memory_units": [ 0 ], "vpns": [ 0 ] } ],
+              "spare_bank_memory_unit": 0
+            },
+            "default_next_table": 1,
+            "result_physical_buses": [ 0 ],
+            "ternary_indirection_stage_table": {
+              "stage_number": 2,
+              "stage_table_type": "ternary_indirection",
+              "size": 4096,
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 4,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 3,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "lsb_mem_word_offset": 96,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 20,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "lsb_mem_word_offset": 99,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 9,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "lsb_mem_word_offset": 119,
+                          "field_name": "--padding_23_31--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 2,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "lsb_mem_word_offset": 64,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 20,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "lsb_mem_word_offset": 67,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 9,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "lsb_mem_word_offset": 87,
+                          "field_name": "--padding_23_31--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 1,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "lsb_mem_word_offset": 32,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 20,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "lsb_mem_word_offset": 35,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 9,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "lsb_mem_word_offset": 55,
+                          "field_name": "--padding_23_31--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 20,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "lsb_mem_word_offset": 3,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 9,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "lsb_mem_word_offset": 23,
+                          "field_name": "--padding_23_31--"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "memory_resource_allocation": {
+                "memory_type": "sram",
+                "memory_units_and_vpns": [ { "memory_units": [ 2 ], "vpns": [ 0 ] } ],
+                "spare_bank_memory_unit": 2
+              },
+              "action_format": [
+                {
+                  "action_name": "nop",
+                  "action_handle": 536870919,
+                  "table_name": "tbl_act_12",
+                  "next_table": 0,
+                  "next_table_full": 33,
+                  "vliw_instruction": 0,
+                  "vliw_instruction_full": 65,
+                  "immediate_fields": []
+                },
+                {
+                  "action_name": "filtering.push_internal_vlan",
+                  "action_handle": 536870917,
+                  "table_name": "tbl_act_12",
+                  "next_table": 0,
+                  "next_table_full": 33,
+                  "vliw_instruction": 1,
+                  "vliw_instruction_full": 64,
+                  "immediate_fields": [
+                    {
+                      "param_name": "constant_1",
+                      "param_type": "constant",
+                      "const_value": 1,
+                      "param_shift": 0,
+                      "dest_start": 18,
+                      "dest_width": 1
+                    },
+                    {
+                      "param_name": "constant_1",
+                      "param_type": "constant",
+                      "const_value": 1,
+                      "param_shift": 0,
+                      "dest_start": 19,
+                      "dest_width": 1
+                    },
+                    {
+                      "param_name": "constant_0",
+                      "param_type": "constant",
+                      "const_value": 0,
+                      "param_shift": 0,
+                      "dest_start": 12,
+                      "dest_width": 1
+                    },
+                    {
+                      "param_name": "constant_0",
+                      "param_type": "constant",
+                      "const_value": 0,
+                      "param_shift": 0,
+                      "dest_start": 13,
+                      "dest_width": 3
+                    },
+                    {
+                      "param_name": "new_vlan_id",
+                      "param_type": "parameter",
+                      "param_shift": 0,
+                      "dest_start": 0,
+                      "dest_width": 12
+                    }
+                  ]
+                },
+                {
+                  "action_name": "filtering.set_vlan",
+                  "action_handle": 536870918,
+                  "table_name": "tbl_act_12",
+                  "next_table": 0,
+                  "next_table_full": 33,
+                  "vliw_instruction": 2,
+                  "vliw_instruction_full": 66,
+                  "immediate_fields": [
+                    {
+                      "param_name": "new_vlan_id",
+                      "param_type": "parameter",
+                      "param_shift": 0,
+                      "dest_start": 0,
+                      "dest_width": 12
+                    }
+                  ]
+                },
+                {
+                  "action_name": "filtering.drop",
+                  "action_handle": 536870920,
+                  "table_name": "tbl_act_12",
+                  "next_table": 0,
+                  "next_table_full": 33,
+                  "vliw_instruction": 3,
+                  "vliw_instruction_full": 67,
+                  "immediate_fields": []
+                }
+              ]
+            }
+          }
+        ],
+        "match_type": "ternary"
+      },
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 67108865,
+          "name": "filtering.ingress_port_vlan_counter"
+        }
+      ],
+      "stateful_table_refs": [],
+      "actions": [
+        {
+          "name": "nop",
+          "handle": 536870919,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": []
+        },
+        {
+          "name": "filtering.push_internal_vlan",
+          "handle": 536870917,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "new_vlan_id",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 12
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "vlan_tag.ether_type" },
+              "src": [ { "type": "phv", "name": "H7" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.ether_type" },
+              "src": [ { "immediate": "33024" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "B8" },
+              "src": [
+                { "type": "immediate", "name": "$data1" },
+                { "type": "phv", "name": "B8" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "H3" },
+              "src": [ { "type": "immediate", "name": "$data0" } ]
+            }
+          ]
+        },
+        {
+          "name": "filtering.set_vlan",
+          "handle": 536870918,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "new_vlan_id",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 12
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "vlan_tag.vlan_id" },
+              "src": [
+                { "type": "immediate", "name": "new_vlan_id" },
+                { "type": "phv", "name": "H3" }
+              ]
+            }
+          ]
+        },
+        {
+          "name": "filtering.drop",
+          "handle": 536870920,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.drop_ctl" },
+              "src": [
+                { "type": "immmediate", "name": "1" },
+                { "type": "phv", "name": "H2" }
+              ]
+            }
+          ]
+        }
+      ],
+      "default_action_handle": 536870919,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "ig_intr_md.ingress_port",
+          "position": 0,
+          "match_type": "exact",
+          "start_bit": 0,
+          "bit_width": 9,
+          "bit_width_full": 9,
+          "is_valid": false,
+          "instance_name": "ig_intr_md",
+          "field_name": "ingress_port"
+        },
+        {
+          "name": "vlan_tag",
+          "position": 1,
+          "match_type": "exact",
+          "start_bit": 0,
+          "bit_width": 1,
+          "bit_width_full": 1,
+          "is_valid": true,
+          "instance_name": "vlan_tag",
+          "field_name": ""
+        },
+        {
+          "name": "vlan_tag.vlan_id",
+          "position": 2,
+          "match_type": "ternary",
+          "start_bit": 0,
+          "bit_width": 12,
+          "bit_width_full": 12,
+          "is_valid": false,
+          "instance_name": "vlan_tag",
+          "field_name": "vlan_id"
+        }
+      ]
+    },
+    {
+      "direction": "ingress",
+      "handle": 67108865,
+      "name": "filtering.ingress_port_vlan_counter",
+      "table_type": "statistics",
+      "size": 0,
+      "stage_tables": [
+        {
+          "stage_number": 2,
+          "size": 2048,
+          "stage_table_type": "statistics",
+          "logical_table_id": 0,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 78 ], "vpns": [ 0 ] },
+              { "memory_units": [ 79 ], "vpns": [ 1 ] }
+            ],
+            "spare_bank_memory_unit": 79
+          },
+          "stats_alu_index": 3
+        }
+      ],
+      "how_referenced": "direct",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 36,
+      "packet_counter_resolution": 28,
+      "statistics_type": "packets_and_bytes"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777221,
+      "name": "tbl_act_4",
+      "table_type": "match",
+      "size": 512,
+      "preferred_match_type": "exact",
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 2,
+            "size": 1,
+            "stage_table_type": "match_with_no_key",
+            "logical_table_id": 1,
+            "has_attached_gateway": true,
+            "memory_resource_allocation": null,
+            "default_next_table": 255,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 0,
+                "entries_per_table_word": 0,
+                "number_memory_units_per_table_word": 0
+              }
+            ],
+            "result_physical_buses": [ 1 ],
+            "action_format": [
+              {
+                "action_name": "act_4",
+                "action_handle": 536870921,
+                "table_name": "filtering_fwd_classifier",
+                "next_table": 0,
+                "next_table_full": 48,
+                "vliw_instruction": 0,
+                "vliw_instruction_full": 65,
+                "immediate_fields": []
+              }
+            ],
+            "hash_functions": []
+          }
+        ],
+        "match_type": "match_with_no_key",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "act_4",
+          "handle": 536870921,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": []
+        }
+      ],
+      "default_action_handle": 536870921,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "performs_hash_action": true,
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "indirect",
+          "handle": 67108866,
+          "name": "port_counters_control.ingress_port_counter"
+        }
+      ],
+      "stateful_table_refs": []
+    },
+    {
+      "direction": "ingress",
+      "handle": 67108866,
+      "name": "port_counters_control.ingress_port_counter",
+      "table_type": "statistics",
+      "size": 511,
+      "stage_tables": [
+        {
+          "stage_number": 2,
+          "size": 4096,
+          "stage_table_type": "statistics",
+          "logical_table_id": 1,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 4,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 54 ], "vpns": [ 0 ] },
+              { "memory_units": [ 55 ], "vpns": [ 1 ] }
+            ],
+            "spare_bank_memory_unit": 55
+          },
+          "stats_alu_index": 2
+        }
+      ],
+      "how_referenced": "indirect",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 0,
+      "packet_counter_resolution": 32,
+      "statistics_type": "packets"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777222,
+      "name": "filtering.fwd_classifier",
+      "table_type": "match",
+      "size": 3072,
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 67108867,
+          "name": "filtering.fwd_classifier_counter"
+        }
+      ],
+      "stateful_table_refs": [],
+      "default_action_handle": 536870922,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "ig_intr_md.ingress_port",
+          "position": 0,
+          "match_type": "exact",
+          "start_bit": 0,
+          "bit_width": 9,
+          "bit_width_full": 9,
+          "is_valid": false,
+          "instance_name": "ig_intr_md",
+          "field_name": "ingress_port"
+        },
+        {
+          "name": "ethernet.dst_addr",
+          "position": 1,
+          "match_type": "exact",
+          "start_bit": 0,
+          "bit_width": 48,
+          "bit_width_full": 48,
+          "is_valid": false,
+          "instance_name": "ethernet",
+          "field_name": "dst_addr"
+        },
+        {
+          "name": "fabric_metadata.original_ether_type",
+          "position": 2,
+          "match_type": "exact",
+          "start_bit": 0,
+          "bit_width": 16,
+          "bit_width_full": 16,
+          "is_valid": false,
+          "instance_name": "fabric_metadata",
+          "field_name": "original_ether_type"
+        }
+      ],
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 3,
+            "size": 3072,
+            "stage_table_type": "hash_match",
+            "logical_table_id": 0,
+            "has_attached_gateway": false,
+            "hash_functions": [
+              {
+                "hash_bits": [
+                  {
+                    "hash_bit": 0,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 16, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 18, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 21, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 24, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 25, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 27, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 36, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 39, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 44, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 45, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 46, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 0, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 11, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 12, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 13, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 15, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 1,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 16, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 21, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 22, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 24, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 28, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 34, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 36, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 39, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 1, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 11, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 2,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 18, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 21, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 22, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 23, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 25, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 27, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 28, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 31, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 34, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 36, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 39, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 44, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 2, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 10, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 11, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 12, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 3,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 17, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 23, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 25, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 27, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 28, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 36, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 40, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 42, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 44, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 3, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 11, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 15, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 4,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 17, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 22, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 23, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 31, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 39, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 44, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 46, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 4, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 12, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 5,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 18, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 21, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 23, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 27, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 28, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 31, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 36, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 46, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 5, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 10, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 12, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 6,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 16, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 17, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 22, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 31, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 39, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 45, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 6, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 11, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 12, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 13, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 7,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 16, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 18, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 22, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 28, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 39, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 42, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 7, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 11, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 15, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 8,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 23, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 31, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 37, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 40, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 42, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 44, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 46, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 8, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 10, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 11, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 13, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 15, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 9,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 17, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 18, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 21, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 24, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 25, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 27, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 28, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 13, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 10,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 17, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 18, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 21, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 23, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 24, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 31, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 34, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 36, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 37, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 40, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 42, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 44, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 45, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 46, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 0, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 11, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 13, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 11,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 16, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 21, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 27, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 28, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 34, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 36, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 37, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 42, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 1, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 15, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 12,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 16, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 21, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 22, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 23, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 25, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 28, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 34, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 36, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 40, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 42, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 45, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 2, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 12, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 13, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 13,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 16, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 21, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 22, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 27, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 28, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 31, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 34, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 39, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 42, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 45, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 3, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 11, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 12, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 15, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 14,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 18, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 22, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 24, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 42, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 44, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 4, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 10, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 11, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 12, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 13, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 15, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 15,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 17, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 22, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 23, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 24, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 34, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 40, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 42, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 44, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 5, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 11, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 15, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 16,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 17, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 18, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 21, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 23, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 24, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 27, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 34, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 40, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 44, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 46, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 6, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 10, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 17,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 16, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 17, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 23, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 25, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 27, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 31, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 39, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 40, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 45, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 46, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 7, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 10, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 13, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 15, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 18,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 17, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 21, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 23, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 25, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 28, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 31, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 44, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 45, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 8, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 11, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 15, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 19,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 16, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 17, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 18, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 24, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 31, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 10, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 11, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 13, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 20,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 22, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 24, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 27, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 28, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 34, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 39, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 40, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 42, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 44, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 46, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 0, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 10, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 13, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 21,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 17, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 18, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 21, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 22, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 25, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 31, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 36, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 1, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 10, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 13, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 15, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 22,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 16, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 17, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 22, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 24, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 28, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 31, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 34, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 36, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 42, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 45, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 46, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 2, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 10, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 12, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 13, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 15, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 23,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 16, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 17, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 18, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 21, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 23, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 25, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 27, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 34, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 40, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 42, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 46, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 3, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 11, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 12, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 13, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 24,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 16, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 17, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 18, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 22, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 23, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 24, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 25, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 28, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 34, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 36, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 39, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 42, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 44, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 45, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 46, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 4, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 15, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 25,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 16, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 18, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 22, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 24, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 25, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 27, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 39, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 40, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 42, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 46, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 5, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 12, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 15, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 26,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 23, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 27, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 28, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 34, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 36, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 40, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 44, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 45, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 46, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 6, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 10, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 11, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 12, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 13, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 27,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 21, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 23, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 24, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 28, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 31, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 40, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 44, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 46, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 7, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 10, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 12, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 28,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 17, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 18, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 24, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 25, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 37, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 39, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 42, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 8, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 10, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 13, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 15, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 29,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 22, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 24, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 34, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 36, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 44, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "action_format": [
+              {
+                "action_name": "filtering.set_forwarding_type",
+                "action_handle": 536870922,
+                "table_name": "forwarding_bridging",
+                "next_table": 0,
+                "next_table_full": 64,
+                "vliw_instruction": 0,
+                "vliw_instruction_full": 64,
+                "immediate_fields": [
+                  {
+                    "param_name": "fwd_type",
+                    "param_type": "parameter",
+                    "param_shift": 0,
+                    "dest_start": 3,
+                    "dest_width": 3
+                  }
+                ]
+              }
+            ],
+            "result_physical_buses": [ 14 ],
+            "pack_format": [
+              {
+                "memory_word_width": 128,
+                "table_word_width": 128,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1
+              }
+            ],
+            "memory_resource_allocation": null,
+            "ways": [
+              {
+                "stage_number": 3,
+                "way_number": 0,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 6,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "ethernet.dst_addr",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 65,
+                            "start_bit": 9,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 7
+                          },
+                          {
+                            "field_name": "ethernet.dst_addr",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 8,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "ethernet.dst_addr",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 16,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "ethernet.dst_addr",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 24,
+                            "start_bit": 32,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "ethernet.dst_addr",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 40,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "fabric_metadata.original_ether_type",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 0,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "fabric_metadata.original_ether_type",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 48,
+                            "start_bit": 8,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "ig_intr_md.ingress_port",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 56,
+                            "start_bit": 0,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 6,
+                            "field_name": "--padding_6_7--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 64,
+                            "field_name": "--padding_64_64--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 40,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 72,
+                            "field_name": "--padding_72_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 0,
+                  "hash_entry_bit_hi": 9,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
+                }
+              },
+              {
+                "stage_number": 3,
+                "way_number": 1,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 6,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "ethernet.dst_addr",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 65,
+                            "start_bit": 9,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 7
+                          },
+                          {
+                            "field_name": "ethernet.dst_addr",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 8,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "ethernet.dst_addr",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 16,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "ethernet.dst_addr",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 24,
+                            "start_bit": 32,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "ethernet.dst_addr",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 40,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "fabric_metadata.original_ether_type",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 0,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "fabric_metadata.original_ether_type",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 48,
+                            "start_bit": 8,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "ig_intr_md.ingress_port",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 56,
+                            "start_bit": 0,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 6,
+                            "field_name": "--padding_6_7--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 64,
+                            "field_name": "--padding_64_64--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 40,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 72,
+                            "field_name": "--padding_72_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 10,
+                  "hash_entry_bit_hi": 19,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 87 ], "vpns": [ 1 ] } ]
+                }
+              },
+              {
+                "stage_number": 3,
+                "way_number": 2,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 6,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "ethernet.dst_addr",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 65,
+                            "start_bit": 9,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 7
+                          },
+                          {
+                            "field_name": "ethernet.dst_addr",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 8,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "ethernet.dst_addr",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 16,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "ethernet.dst_addr",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 24,
+                            "start_bit": 32,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "ethernet.dst_addr",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 40,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "fabric_metadata.original_ether_type",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 0,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "fabric_metadata.original_ether_type",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 48,
+                            "start_bit": 8,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "ig_intr_md.ingress_port",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 56,
+                            "start_bit": 0,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 6,
+                            "field_name": "--padding_6_7--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 64,
+                            "field_name": "--padding_64_64--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 40,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 72,
+                            "field_name": "--padding_72_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 20,
+                  "hash_entry_bit_hi": 29,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 88 ], "vpns": [ 2 ] } ]
+                }
+              }
+            ]
+          }
+        ],
+        "match_type": "exact",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "filtering.set_forwarding_type",
+          "handle": 536870922,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "p4_parameters": [
+            {
+              "name": "fwd_type",
+              "start_bit": 0,
+              "position": 0,
+              "default_value": 0,
+              "bit_width": 3
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "fabric_metadata.fwd_type" },
+              "src": [
+                { "type": "immediate", "name": "fwd_type" },
+                { "type": "phv", "name": "H2" }
+              ]
+            }
+          ]
+        }
+      ]
+    },
+    {
+      "direction": "ingress",
+      "handle": 67108867,
+      "name": "filtering.fwd_classifier_counter",
+      "table_type": "statistics",
+      "size": 0,
+      "stage_tables": [
+        {
+          "stage_number": 3,
+          "size": 4096,
+          "stage_table_type": "statistics",
+          "logical_table_id": 0,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 78 ], "vpns": [ 0 ] },
+              { "memory_units": [ 79 ], "vpns": [ 1 ] },
+              { "memory_units": [ 80 ], "vpns": [ 2 ] }
+            ],
+            "spare_bank_memory_unit": 80
+          },
+          "stats_alu_index": 3
+        }
+      ],
+      "how_referenced": "direct",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 36,
+      "packet_counter_resolution": 28,
+      "statistics_type": "packets_and_bytes"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777223,
+      "name": "forwarding.bridging",
+      "table_type": "match",
+      "size": 512,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 4,
+            "size": 512,
+            "stage_table_type": "ternary_match",
+            "logical_table_id": 0,
+            "has_attached_gateway": true,
+            "pack_format": [
+              {
+                "table_word_width": 94,
+                "memory_word_width": 47,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 2,
+                "entries": [
+                  {
+                    "entry_number": 0,
+                    "fields": [
+                      {
+                        "field_name": "--tcam_payload_1--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_1--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "ethernet.dst_addr",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 16,
+                        "field_width": 32
+                      },
+                      {
+                        "field_name": "ethernet.dst_addr",
+                        "lsb_mem_word_offset": 33,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "--tcam_payload_0--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--version--",
+                        "lsb_mem_word_offset": 43,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "version",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "--tcam_parity_0--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "vlan_tag.vlan_id",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "ethernet.dst_addr",
+                        "lsb_mem_word_offset": 9,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "vlan_tag.vlan_id",
+                        "lsb_mem_word_offset": 25,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 4
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "memory_resource_allocation": {
+              "memory_type": "tcam",
+              "memory_units_and_vpns": [ { "memory_units": [ 0, 1 ], "vpns": [ 0 ] } ],
+              "spare_bank_memory_unit": 1
+            },
+            "default_next_table": 0,
+            "result_physical_buses": [ 0, 2 ],
+            "ternary_indirection_stage_table": {
+              "stage_number": 4,
+              "stage_table_type": "ternary_indirection",
+              "size": 2048,
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 2,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 1,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 2,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "lsb_mem_word_offset": 64,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 32,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "lsb_mem_word_offset": 66,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 30,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "lsb_mem_word_offset": 98,
+                          "field_name": "--padding_34_63--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 2,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 32,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "lsb_mem_word_offset": 2,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 30,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "lsb_mem_word_offset": 34,
+                          "field_name": "--padding_34_63--"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "memory_resource_allocation": {
+                "memory_type": "sram",
+                "memory_units_and_vpns": [ { "memory_units": [ 2 ], "vpns": [ 0 ] } ],
+                "spare_bank_memory_unit": 2
+              },
+              "action_format": [
+                {
+                  "action_name": "NoAction",
+                  "action_handle": 536870924,
+                  "table_name": "forwarding_acl",
+                  "next_table": 0,
+                  "next_table_full": 80,
+                  "vliw_instruction": 0,
+                  "vliw_instruction_full": 65,
+                  "immediate_fields": []
+                },
+                {
+                  "action_name": "forwarding.set_next_id",
+                  "action_handle": 536870923,
+                  "table_name": "forwarding_acl",
+                  "next_table": 0,
+                  "next_table_full": 80,
+                  "vliw_instruction": 1,
+                  "vliw_instruction_full": 64,
+                  "immediate_fields": [
+                    {
+                      "param_name": "next_id",
+                      "param_type": "parameter",
+                      "param_shift": 0,
+                      "dest_start": 0,
+                      "dest_width": 32
+                    }
+                  ]
+                }
+              ]
+            }
+          }
+        ],
+        "match_type": "ternary"
+      },
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 67108868,
+          "name": "forwarding.bridging_counter"
+        }
+      ],
+      "stateful_table_refs": [],
+      "actions": [
+        {
+          "name": "NoAction",
+          "handle": 536870924,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": []
+        },
+        {
+          "name": "forwarding.set_next_id",
+          "handle": 536870923,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "next_id",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 32
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "fabric_metadata.next_id" },
+              "src": [ { "type": "immediate", "name": "next_id" } ]
+            }
+          ]
+        }
+      ],
+      "default_action_handle": 536870924,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "vlan_tag.vlan_id",
+          "position": 0,
+          "match_type": "exact",
+          "start_bit": 0,
+          "bit_width": 12,
+          "bit_width_full": 12,
+          "is_valid": false,
+          "instance_name": "vlan_tag",
+          "field_name": "vlan_id"
+        },
+        {
+          "name": "ethernet.dst_addr",
+          "position": 1,
+          "match_type": "ternary",
+          "start_bit": 0,
+          "bit_width": 48,
+          "bit_width_full": 48,
+          "is_valid": false,
+          "instance_name": "ethernet",
+          "field_name": "dst_addr"
+        }
+      ]
+    },
+    {
+      "direction": "ingress",
+      "handle": 67108868,
+      "name": "forwarding.bridging_counter",
+      "table_type": "statistics",
+      "size": 0,
+      "stage_tables": [
+        {
+          "stage_number": 4,
+          "size": 2048,
+          "stage_table_type": "statistics",
+          "logical_table_id": 0,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 6 ], "vpns": [ 0 ] },
+              { "memory_units": [ 7 ], "vpns": [ 1 ] }
+            ],
+            "spare_bank_memory_unit": 7
+          },
+          "stats_alu_index": 0
+        }
+      ],
+      "how_referenced": "direct",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 36,
+      "packet_counter_resolution": 28,
+      "statistics_type": "packets_and_bytes"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777224,
+      "name": "forwarding.mpls",
+      "table_type": "match",
+      "size": 3072,
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 67108869,
+          "name": "forwarding.mpls_counter"
+        }
+      ],
+      "stateful_table_refs": [],
+      "default_action_handle": 536870926,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "mpls.label",
+          "position": 0,
+          "match_type": "exact",
+          "start_bit": 0,
+          "bit_width": 20,
+          "bit_width_full": 20,
+          "is_valid": false,
+          "instance_name": "mpls",
+          "field_name": "label"
+        }
+      ],
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 4,
+            "size": 3072,
+            "stage_table_type": "hash_match",
+            "logical_table_id": 1,
+            "has_attached_gateway": true,
+            "hash_functions": [
+              {
+                "hash_bits": [
+                  {
+                    "hash_bit": 0,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 13, "field_name": "mpls.label" },
+                      { "field_bit": 14, "field_name": "mpls.label" },
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 16, "field_name": "mpls.label" },
+                      { "field_bit": 4, "field_name": "mpls.label" },
+                      { "field_bit": 10, "field_name": "mpls.label" },
+                      { "field_bit": 11, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 1,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 5, "field_name": "mpls.label" },
+                      { "field_bit": 11, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 2,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 18, "field_name": "mpls.label" },
+                      { "field_bit": 6, "field_name": "mpls.label" },
+                      { "field_bit": 11, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 3,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 12, "field_name": "mpls.label" },
+                      { "field_bit": 13, "field_name": "mpls.label" },
+                      { "field_bit": 14, "field_name": "mpls.label" },
+                      { "field_bit": 7, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 4,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 12, "field_name": "mpls.label" },
+                      { "field_bit": 13, "field_name": "mpls.label" },
+                      { "field_bit": 16, "field_name": "mpls.label" },
+                      { "field_bit": 8, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 5,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 12, "field_name": "mpls.label" },
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 16, "field_name": "mpls.label" },
+                      { "field_bit": 18, "field_name": "mpls.label" },
+                      { "field_bit": 9, "field_name": "mpls.label" },
+                      { "field_bit": 10, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 6,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 14, "field_name": "mpls.label" },
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 17, "field_name": "mpls.label" },
+                      { "field_bit": 18, "field_name": "mpls.label" },
+                      { "field_bit": 10, "field_name": "mpls.label" },
+                      { "field_bit": 11, "field_name": "mpls.label" },
+                      { "field_bit": 0, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 7,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 11, "field_name": "mpls.label" },
+                      { "field_bit": 1, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 8,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 12, "field_name": "mpls.label" },
+                      { "field_bit": 13, "field_name": "mpls.label" },
+                      { "field_bit": 14, "field_name": "mpls.label" },
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 10, "field_name": "mpls.label" },
+                      { "field_bit": 11, "field_name": "mpls.label" },
+                      { "field_bit": 2, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 9,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 13, "field_name": "mpls.label" },
+                      { "field_bit": 14, "field_name": "mpls.label" },
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 17, "field_name": "mpls.label" },
+                      { "field_bit": 19, "field_name": "mpls.label" },
+                      { "field_bit": 10, "field_name": "mpls.label" },
+                      { "field_bit": 11, "field_name": "mpls.label" },
+                      { "field_bit": 3, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 10,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 14, "field_name": "mpls.label" },
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 18, "field_name": "mpls.label" },
+                      { "field_bit": 19, "field_name": "mpls.label" },
+                      { "field_bit": 4, "field_name": "mpls.label" },
+                      { "field_bit": 11, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 11,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 13, "field_name": "mpls.label" },
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 16, "field_name": "mpls.label" },
+                      { "field_bit": 19, "field_name": "mpls.label" },
+                      { "field_bit": 5, "field_name": "mpls.label" },
+                      { "field_bit": 11, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 12,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 16, "field_name": "mpls.label" },
+                      { "field_bit": 19, "field_name": "mpls.label" },
+                      { "field_bit": 6, "field_name": "mpls.label" },
+                      { "field_bit": 10, "field_name": "mpls.label" },
+                      { "field_bit": 11, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 13,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 13, "field_name": "mpls.label" },
+                      { "field_bit": 14, "field_name": "mpls.label" },
+                      { "field_bit": 19, "field_name": "mpls.label" },
+                      { "field_bit": 7, "field_name": "mpls.label" },
+                      { "field_bit": 10, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 14,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 13, "field_name": "mpls.label" },
+                      { "field_bit": 17, "field_name": "mpls.label" },
+                      { "field_bit": 18, "field_name": "mpls.label" },
+                      { "field_bit": 8, "field_name": "mpls.label" },
+                      { "field_bit": 11, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 15,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 12, "field_name": "mpls.label" },
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 16, "field_name": "mpls.label" },
+                      { "field_bit": 17, "field_name": "mpls.label" },
+                      { "field_bit": 18, "field_name": "mpls.label" },
+                      { "field_bit": 19, "field_name": "mpls.label" },
+                      { "field_bit": 9, "field_name": "mpls.label" },
+                      { "field_bit": 10, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 16,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 13, "field_name": "mpls.label" },
+                      { "field_bit": 16, "field_name": "mpls.label" },
+                      { "field_bit": 19, "field_name": "mpls.label" },
+                      { "field_bit": 11, "field_name": "mpls.label" },
+                      { "field_bit": 0, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 17,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 16, "field_name": "mpls.label" },
+                      { "field_bit": 18, "field_name": "mpls.label" },
+                      { "field_bit": 10, "field_name": "mpls.label" },
+                      { "field_bit": 11, "field_name": "mpls.label" },
+                      { "field_bit": 1, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 18,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 12, "field_name": "mpls.label" },
+                      { "field_bit": 14, "field_name": "mpls.label" },
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 18, "field_name": "mpls.label" },
+                      { "field_bit": 19, "field_name": "mpls.label" },
+                      { "field_bit": 10, "field_name": "mpls.label" },
+                      { "field_bit": 2, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 19,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 13, "field_name": "mpls.label" },
+                      { "field_bit": 14, "field_name": "mpls.label" },
+                      { "field_bit": 16, "field_name": "mpls.label" },
+                      { "field_bit": 17, "field_name": "mpls.label" },
+                      { "field_bit": 19, "field_name": "mpls.label" },
+                      { "field_bit": 3, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 20,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 14, "field_name": "mpls.label" },
+                      { "field_bit": 18, "field_name": "mpls.label" },
+                      { "field_bit": 19, "field_name": "mpls.label" },
+                      { "field_bit": 4, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 21,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 13, "field_name": "mpls.label" },
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 16, "field_name": "mpls.label" },
+                      { "field_bit": 18, "field_name": "mpls.label" },
+                      { "field_bit": 5, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 22,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 17, "field_name": "mpls.label" },
+                      { "field_bit": 6, "field_name": "mpls.label" },
+                      { "field_bit": 10, "field_name": "mpls.label" },
+                      { "field_bit": 11, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 23,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 12, "field_name": "mpls.label" },
+                      { "field_bit": 13, "field_name": "mpls.label" },
+                      { "field_bit": 14, "field_name": "mpls.label" },
+                      { "field_bit": 19, "field_name": "mpls.label" },
+                      { "field_bit": 7, "field_name": "mpls.label" },
+                      { "field_bit": 10, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 24,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 12, "field_name": "mpls.label" },
+                      { "field_bit": 14, "field_name": "mpls.label" },
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 16, "field_name": "mpls.label" },
+                      { "field_bit": 19, "field_name": "mpls.label" },
+                      { "field_bit": 8, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 25,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 12, "field_name": "mpls.label" },
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 18, "field_name": "mpls.label" },
+                      { "field_bit": 9, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 26,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 12, "field_name": "mpls.label" },
+                      { "field_bit": 13, "field_name": "mpls.label" },
+                      { "field_bit": 14, "field_name": "mpls.label" },
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 16, "field_name": "mpls.label" },
+                      { "field_bit": 17, "field_name": "mpls.label" },
+                      { "field_bit": 18, "field_name": "mpls.label" },
+                      { "field_bit": 19, "field_name": "mpls.label" },
+                      { "field_bit": 0, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 27,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 12, "field_name": "mpls.label" },
+                      { "field_bit": 13, "field_name": "mpls.label" },
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 16, "field_name": "mpls.label" },
+                      { "field_bit": 18, "field_name": "mpls.label" },
+                      { "field_bit": 19, "field_name": "mpls.label" },
+                      { "field_bit": 10, "field_name": "mpls.label" },
+                      { "field_bit": 1, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 28,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 12, "field_name": "mpls.label" },
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 18, "field_name": "mpls.label" },
+                      { "field_bit": 19, "field_name": "mpls.label" },
+                      { "field_bit": 10, "field_name": "mpls.label" },
+                      { "field_bit": 11, "field_name": "mpls.label" },
+                      { "field_bit": 2, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 29,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 12, "field_name": "mpls.label" },
+                      { "field_bit": 14, "field_name": "mpls.label" },
+                      { "field_bit": 16, "field_name": "mpls.label" },
+                      { "field_bit": 3, "field_name": "mpls.label" }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "action_format": [
+              {
+                "action_name": "NoAction",
+                "action_handle": 536870926,
+                "table_name": "tbl_act_9",
+                "next_table": 0,
+                "next_table_full": 68,
+                "vliw_instruction": 0,
+                "vliw_instruction_full": 65,
+                "immediate_fields": []
+              },
+              {
+                "action_name": "forwarding.pop_mpls_and_next",
+                "action_handle": 536870925,
+                "table_name": "tbl_act_9",
+                "next_table": 0,
+                "next_table_full": 68,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 66,
+                "immediate_fields": [
+                  {
+                    "param_name": "next_id",
+                    "param_type": "parameter",
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 32
+                  }
+                ]
+              }
+            ],
+            "result_physical_buses": [ 14 ],
+            "pack_format": [
+              {
+                "memory_word_width": 128,
+                "table_word_width": 128,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1
+              }
+            ],
+            "memory_resource_allocation": null,
+            "ways": [
+              {
+                "stage_number": 4,
+                "way_number": 0,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 32,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "lsb_mem_word_offset": 2,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "mpls.label",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 38,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 2
+                          },
+                          {
+                            "field_name": "mpls.label",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 12,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 34,
+                            "field_name": "--padding_34_37--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 64,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 48,
+                            "field_name": "--padding_48_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 0,
+                  "hash_entry_bit_hi": 9,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
+                }
+              },
+              {
+                "stage_number": 4,
+                "way_number": 1,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 32,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "lsb_mem_word_offset": 2,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "mpls.label",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 38,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 2
+                          },
+                          {
+                            "field_name": "mpls.label",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 12,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 34,
+                            "field_name": "--padding_34_37--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 64,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 48,
+                            "field_name": "--padding_48_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 10,
+                  "hash_entry_bit_hi": 19,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 87 ], "vpns": [ 1 ] } ]
+                }
+              },
+              {
+                "stage_number": 4,
+                "way_number": 2,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 32,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "lsb_mem_word_offset": 2,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "mpls.label",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 38,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 2
+                          },
+                          {
+                            "field_name": "mpls.label",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 12,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 34,
+                            "field_name": "--padding_34_37--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 64,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 48,
+                            "field_name": "--padding_48_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 20,
+                  "hash_entry_bit_hi": 29,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 88 ], "vpns": [ 2 ] } ]
+                }
+              }
+            ]
+          }
+        ],
+        "match_type": "exact",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "NoAction",
+          "handle": 536870926,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": []
+        },
+        {
+          "name": "forwarding.pop_mpls_and_next",
+          "handle": 536870925,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "p4_parameters": [
+            {
+              "name": "next_id",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 32
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.$valid" },
+              "src": [
+                { "type": "immmediate", "name": "0" },
+                { "type": "phv", "name": "B7" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "fabric_metadata.next_id" },
+              "src": [ { "type": "immediate", "name": "next_id" } ]
+            }
+          ]
+        }
+      ]
+    },
+    {
+      "direction": "ingress",
+      "handle": 67108869,
+      "name": "forwarding.mpls_counter",
+      "table_type": "statistics",
+      "size": 0,
+      "stage_tables": [
+        {
+          "stage_number": 4,
+          "size": 4096,
+          "stage_table_type": "statistics",
+          "logical_table_id": 1,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 78 ], "vpns": [ 0 ] },
+              { "memory_units": [ 79 ], "vpns": [ 1 ] },
+              { "memory_units": [ 80 ], "vpns": [ 2 ] }
+            ],
+            "spare_bank_memory_unit": 80
+          },
+          "stats_alu_index": 3
+        }
+      ],
+      "how_referenced": "direct",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 36,
+      "packet_counter_resolution": 28,
+      "statistics_type": "packets_and_bytes"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777225,
+      "name": "tbl_act_1",
+      "table_type": "match",
+      "size": 1,
+      "preferred_match_type": "exact",
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 4,
+            "size": 1,
+            "stage_table_type": "match_with_no_key",
+            "logical_table_id": 4,
+            "has_attached_gateway": true,
+            "memory_resource_allocation": null,
+            "default_next_table": 255,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 0,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 0
+              }
+            ],
+            "result_physical_buses": [ 0 ],
+            "action_format": [
+              {
+                "action_name": "act_1",
+                "action_handle": 536870927,
+                "table_name": "forwarding_acl",
+                "next_table": 0,
+                "next_table_full": 80,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 67,
+                "immediate_fields": []
+              }
+            ],
+            "hash_functions": []
+          }
+        ],
+        "match_type": "match_with_no_key",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "act_1",
+          "handle": 536870927,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "vlan_tag.ether_type" },
+              "src": [ { "immediate": "2048" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "fabric_metadata.original_ether_type" },
+              "src": [ { "immediate": "2048" } ]
+            }
+          ]
+        }
+      ],
+      "default_action_handle": 536870927,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "performs_hash_action": false,
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": []
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777226,
+      "name": "forwarding.unicast_v4",
+      "table_type": "match",
+      "size": 512,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 4,
+            "size": 512,
+            "stage_table_type": "ternary_match",
+            "logical_table_id": 2,
+            "has_attached_gateway": true,
+            "pack_format": [
+              {
+                "table_word_width": 47,
+                "memory_word_width": 47,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1,
+                "entries": [
+                  {
+                    "entry_number": 0,
+                    "fields": [
+                      {
+                        "field_name": "--tcam_payload_0--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--version--",
+                        "lsb_mem_word_offset": 43,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "version",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "--tcam_parity_0--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "ipv4.dst_addr",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 24,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "ipv4.dst_addr",
+                        "lsb_mem_word_offset": 9,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 24
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "memory_resource_allocation": {
+              "memory_type": "tcam",
+              "memory_units_and_vpns": [ { "memory_units": [ 5 ], "vpns": [ 0 ] } ],
+              "spare_bank_memory_unit": 5
+            },
+            "default_next_table": 0,
+            "result_physical_buses": [ 10 ],
+            "ternary_indirection_stage_table": {
+              "stage_number": 4,
+              "stage_table_type": "ternary_indirection",
+              "size": 2048,
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 2,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 1,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 2,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "lsb_mem_word_offset": 64,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 32,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "lsb_mem_word_offset": 66,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 30,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "lsb_mem_word_offset": 98,
+                          "field_name": "--padding_34_63--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 2,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 32,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "lsb_mem_word_offset": 2,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 30,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "lsb_mem_word_offset": 34,
+                          "field_name": "--padding_34_63--"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "memory_resource_allocation": {
+                "memory_type": "sram",
+                "memory_units_and_vpns": [ { "memory_units": [ 14 ], "vpns": [ 0 ] } ],
+                "spare_bank_memory_unit": 14
+              },
+              "action_format": [
+                {
+                  "action_name": "NoAction",
+                  "action_handle": 536870929,
+                  "table_name": "forwarding_acl",
+                  "next_table": 0,
+                  "next_table_full": 80,
+                  "vliw_instruction": 0,
+                  "vliw_instruction_full": 65,
+                  "immediate_fields": []
+                },
+                {
+                  "action_name": "forwarding.set_next_id",
+                  "action_handle": 536870928,
+                  "table_name": "forwarding_acl",
+                  "next_table": 0,
+                  "next_table_full": 80,
+                  "vliw_instruction": 1,
+                  "vliw_instruction_full": 68,
+                  "immediate_fields": [
+                    {
+                      "param_name": "next_id",
+                      "param_type": "parameter",
+                      "param_shift": 0,
+                      "dest_start": 0,
+                      "dest_width": 32
+                    }
+                  ]
+                }
+              ]
+            }
+          }
+        ],
+        "match_type": "ternary"
+      },
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 67108870,
+          "name": "forwarding.unicast_v4_counter"
+        }
+      ],
+      "stateful_table_refs": [],
+      "actions": [
+        {
+          "name": "NoAction",
+          "handle": 536870929,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": []
+        },
+        {
+          "name": "forwarding.set_next_id",
+          "handle": 536870928,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "next_id",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 32
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "fabric_metadata.next_id" },
+              "src": [ { "type": "immediate", "name": "next_id" } ]
+            }
+          ]
+        }
+      ],
+      "default_action_handle": 536870929,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "ipv4.dst_addr",
+          "position": 0,
+          "match_type": "lpm",
+          "start_bit": 0,
+          "bit_width": 32,
+          "bit_width_full": 32,
+          "is_valid": false,
+          "instance_name": "ipv4",
+          "field_name": "dst_addr"
+        }
+      ]
+    },
+    {
+      "direction": "ingress",
+      "handle": 67108870,
+      "name": "forwarding.unicast_v4_counter",
+      "table_type": "statistics",
+      "size": 0,
+      "stage_tables": [
+        {
+          "stage_number": 4,
+          "size": 2048,
+          "stage_table_type": "statistics",
+          "logical_table_id": 2,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 30 ], "vpns": [ 0 ] },
+              { "memory_units": [ 31 ], "vpns": [ 1 ] }
+            ],
+            "spare_bank_memory_unit": 31
+          },
+          "stats_alu_index": 1
+        }
+      ],
+      "how_referenced": "direct",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 36,
+      "packet_counter_resolution": 28,
+      "statistics_type": "packets_and_bytes"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777227,
+      "name": "forwarding.multicast_v4",
+      "table_type": "match",
+      "size": 512,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 4,
+            "size": 512,
+            "stage_table_type": "ternary_match",
+            "logical_table_id": 3,
+            "has_attached_gateway": true,
+            "pack_format": [
+              {
+                "table_word_width": 141,
+                "memory_word_width": 47,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 3,
+                "entries": [
+                  {
+                    "entry_number": 0,
+                    "fields": [
+                      {
+                        "field_name": "--tcam_payload_2--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_2--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "vlan_tag.vlan_id",
+                        "lsb_mem_word_offset": 17,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "--tcam_payload_1--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_1--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "ipv4.dst_addr",
+                        "lsb_mem_word_offset": 33,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 24,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "--tcam_payload_0--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--version--",
+                        "lsb_mem_word_offset": 43,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "version",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "--tcam_parity_0--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "ipv4.dst_addr",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 16
+                      },
+                      {
+                        "field_name": "vlan_tag.vlan_id",
+                        "lsb_mem_word_offset": 17,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 4
+                      },
+                      {
+                        "field_name": "ipv4.dst_addr",
+                        "lsb_mem_word_offset": 25,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "memory_resource_allocation": {
+              "memory_type": "tcam",
+              "memory_units_and_vpns": [ { "memory_units": [ 2, 3, 4 ], "vpns": [ 0 ] } ],
+              "spare_bank_memory_unit": 4
+            },
+            "default_next_table": 0,
+            "result_physical_buses": [ 4, 6, 8 ],
+            "ternary_indirection_stage_table": {
+              "stage_number": 4,
+              "stage_table_type": "ternary_indirection",
+              "size": 2048,
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 2,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 1,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 2,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "lsb_mem_word_offset": 64,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 32,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "lsb_mem_word_offset": 66,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 30,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "lsb_mem_word_offset": 98,
+                          "field_name": "--padding_34_63--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 2,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 32,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "lsb_mem_word_offset": 2,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 30,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "lsb_mem_word_offset": 34,
+                          "field_name": "--padding_34_63--"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "memory_resource_allocation": {
+                "memory_type": "sram",
+                "memory_units_and_vpns": [ { "memory_units": [ 26 ], "vpns": [ 0 ] } ],
+                "spare_bank_memory_unit": 26
+              },
+              "action_format": [
+                {
+                  "action_name": "NoAction",
+                  "action_handle": 536870931,
+                  "table_name": "forwarding_acl",
+                  "next_table": 0,
+                  "next_table_full": 80,
+                  "vliw_instruction": 0,
+                  "vliw_instruction_full": 65,
+                  "immediate_fields": []
+                },
+                {
+                  "action_name": "forwarding.set_next_id",
+                  "action_handle": 536870930,
+                  "table_name": "forwarding_acl",
+                  "next_table": 0,
+                  "next_table_full": 80,
+                  "vliw_instruction": 1,
+                  "vliw_instruction_full": 70,
+                  "immediate_fields": [
+                    {
+                      "param_name": "next_id",
+                      "param_type": "parameter",
+                      "param_shift": 0,
+                      "dest_start": 0,
+                      "dest_width": 32
+                    }
+                  ]
+                }
+              ]
+            }
+          }
+        ],
+        "match_type": "ternary"
+      },
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 67108871,
+          "name": "forwarding.multicast_v4_counter"
+        }
+      ],
+      "stateful_table_refs": [],
+      "actions": [
+        {
+          "name": "NoAction",
+          "handle": 536870931,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": []
+        },
+        {
+          "name": "forwarding.set_next_id",
+          "handle": 536870930,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "next_id",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 32
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "fabric_metadata.next_id" },
+              "src": [ { "type": "immediate", "name": "next_id" } ]
+            }
+          ]
+        }
+      ],
+      "default_action_handle": 536870931,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "vlan_tag.vlan_id",
+          "position": 0,
+          "match_type": "exact",
+          "start_bit": 0,
+          "bit_width": 12,
+          "bit_width_full": 12,
+          "is_valid": false,
+          "instance_name": "vlan_tag",
+          "field_name": "vlan_id"
+        },
+        {
+          "name": "ipv4.dst_addr",
+          "position": 1,
+          "match_type": "lpm",
+          "start_bit": 0,
+          "bit_width": 32,
+          "bit_width_full": 32,
+          "is_valid": false,
+          "instance_name": "ipv4",
+          "field_name": "dst_addr"
+        }
+      ]
+    },
+    {
+      "direction": "ingress",
+      "handle": 67108871,
+      "name": "forwarding.multicast_v4_counter",
+      "table_type": "statistics",
+      "size": 0,
+      "stage_tables": [
+        {
+          "stage_number": 4,
+          "size": 2048,
+          "stage_table_type": "statistics",
+          "logical_table_id": 3,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 54 ], "vpns": [ 0 ] },
+              { "memory_units": [ 55 ], "vpns": [ 1 ] }
+            ],
+            "spare_bank_memory_unit": 55
+          },
+          "stats_alu_index": 2
+        }
+      ],
+      "how_referenced": "direct",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 36,
+      "packet_counter_resolution": 28,
+      "statistics_type": "packets_and_bytes"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777228,
+      "name": "forwarding.acl",
+      "table_type": "match",
+      "size": 256,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 5,
+            "size": 512,
+            "stage_table_type": "ternary_match",
+            "logical_table_id": 0,
+            "has_attached_gateway": false,
+            "pack_format": [
+              {
+                "table_word_width": 282,
+                "memory_word_width": 47,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 6,
+                "entries": [
+                  {
+                    "entry_number": 0,
+                    "fields": [
+                      {
+                        "field_name": "--tcam_payload_5--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 5,
+                        "msb_mem_word_idx": 5,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_5--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 5,
+                        "msb_mem_word_idx": 5,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "ethernet.dst_addr",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 5,
+                        "msb_mem_word_idx": 5,
+                        "source": "spec",
+                        "start_bit": 16,
+                        "field_width": 32
+                      },
+                      {
+                        "field_name": "ethernet.src_addr",
+                        "lsb_mem_word_offset": 33,
+                        "lsb_mem_word_idx": 5,
+                        "msb_mem_word_idx": 5,
+                        "source": "spec",
+                        "start_bit": 16,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "ig_intr_md.ingress_port",
+                        "lsb_mem_word_offset": 41,
+                        "lsb_mem_word_idx": 5,
+                        "msb_mem_word_idx": 5,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_payload_4--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 4,
+                        "msb_mem_word_idx": 4,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--version--",
+                        "lsb_mem_word_offset": 43,
+                        "lsb_mem_word_idx": 4,
+                        "msb_mem_word_idx": 4,
+                        "source": "version",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "--tcam_parity_4--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 4,
+                        "msb_mem_word_idx": 4,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "ethernet.src_addr",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 4,
+                        "msb_mem_word_idx": 4,
+                        "source": "spec",
+                        "start_bit": 32,
+                        "field_width": 16
+                      },
+                      {
+                        "field_name": "ipv4.dst_addr",
+                        "lsb_mem_word_offset": 17,
+                        "lsb_mem_word_idx": 4,
+                        "msb_mem_word_idx": 4,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "ethernet.src_addr",
+                        "lsb_mem_word_offset": 25,
+                        "lsb_mem_word_idx": 4,
+                        "msb_mem_word_idx": 4,
+                        "source": "spec",
+                        "start_bit": 24,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "ipv4.dst_addr",
+                        "lsb_mem_word_offset": 33,
+                        "lsb_mem_word_idx": 4,
+                        "msb_mem_word_idx": 4,
+                        "source": "spec",
+                        "start_bit": 16,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "--tcam_payload_3--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 3,
+                        "msb_mem_word_idx": 3,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_3--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 3,
+                        "msb_mem_word_idx": 3,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "ipv4.dst_addr",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 3,
+                        "msb_mem_word_idx": 3,
+                        "source": "spec",
+                        "start_bit": 24,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "ipv4.src_addr",
+                        "lsb_mem_word_offset": 9,
+                        "lsb_mem_word_idx": 3,
+                        "msb_mem_word_idx": 3,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "ipv4.dst_addr",
+                        "lsb_mem_word_offset": 17,
+                        "lsb_mem_word_idx": 3,
+                        "msb_mem_word_idx": 3,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "ipv4.src_addr",
+                        "lsb_mem_word_offset": 25,
+                        "lsb_mem_word_idx": 3,
+                        "msb_mem_word_idx": 3,
+                        "source": "spec",
+                        "start_bit": 16,
+                        "field_width": 16
+                      },
+                      {
+                        "field_name": "fabric_metadata.l4_dst_port",
+                        "lsb_mem_word_offset": 41,
+                        "lsb_mem_word_idx": 3,
+                        "msb_mem_word_idx": 3,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 4
+                      },
+                      {
+                        "field_name": "fabric_metadata.l4_dst_port",
+                        "lsb_mem_word_offset": 41,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "spec",
+                        "start_bit": 4,
+                        "field_width": 4
+                      },
+                      {
+                        "field_name": "--tcam_payload_2--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_2--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "ipv4.src_addr",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "ethernet.dst_addr",
+                        "lsb_mem_word_offset": 9,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 16
+                      },
+                      {
+                        "field_name": "ethernet.src_addr",
+                        "lsb_mem_word_offset": 25,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 16
+                      },
+                      {
+                        "field_name": "--tcam_payload_1--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_1--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "fabric_metadata.l4_src_port",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "fabric_metadata.l4_dst_port",
+                        "lsb_mem_word_offset": 9,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "fabric_metadata.original_ether_type",
+                        "lsb_mem_word_offset": 17,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "fabric_metadata.l4_src_port",
+                        "lsb_mem_word_offset": 25,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "ig_intr_md.ingress_port",
+                        "lsb_mem_word_offset": 33,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "icmp.icmp_type",
+                        "lsb_mem_word_offset": 41,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 4
+                      },
+                      {
+                        "field_name": "icmp.icmp_type",
+                        "lsb_mem_word_offset": 41,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 4,
+                        "field_width": 4
+                      },
+                      {
+                        "field_name": "--tcam_payload_0--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_0--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "vlan_tag.vlan_id",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "fabric_metadata.original_ether_type",
+                        "lsb_mem_word_offset": 9,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "fabric_metadata.ip_proto",
+                        "lsb_mem_word_offset": 17,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "vlan_tag.vlan_id",
+                        "lsb_mem_word_offset": 25,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 4
+                      },
+                      {
+                        "field_name": "icmp.icmp_code",
+                        "lsb_mem_word_offset": 33,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "memory_resource_allocation": {
+              "memory_type": "tcam",
+              "memory_units_and_vpns": [ { "memory_units": [ 0, 1, 2, 3, 4, 5 ], "vpns": [ 0 ] } ],
+              "spare_bank_memory_unit": 5
+            },
+            "default_next_table": 0,
+            "result_physical_buses": [ 0, 2, 4, 6, 8, 10 ],
+            "ternary_indirection_stage_table": {
+              "stage_number": 5,
+              "stage_table_type": "ternary_indirection",
+              "size": 2048,
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 2,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 1,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 2,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "lsb_mem_word_offset": 64,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 32,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "lsb_mem_word_offset": 66,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 30,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "lsb_mem_word_offset": 98,
+                          "field_name": "--padding_34_63--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 2,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 32,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "lsb_mem_word_offset": 2,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 30,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "lsb_mem_word_offset": 34,
+                          "field_name": "--padding_34_63--"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "memory_resource_allocation": {
+                "memory_type": "sram",
+                "memory_units_and_vpns": [ { "memory_units": [ 2 ], "vpns": [ 0 ] } ],
+                "spare_bank_memory_unit": 2
+              },
+              "action_format": [
+                {
+                  "action_name": "nop",
+                  "action_handle": 536870935,
+                  "table_name": "next_simple",
+                  "next_table": 0,
+                  "next_table_full": 96,
+                  "vliw_instruction": 0,
+                  "vliw_instruction_full": 67,
+                  "immediate_fields": []
+                },
+                {
+                  "action_name": "forwarding.set_next_id",
+                  "action_handle": 536870932,
+                  "table_name": "next_simple",
+                  "next_table": 0,
+                  "next_table_full": 96,
+                  "vliw_instruction": 1,
+                  "vliw_instruction_full": 64,
+                  "immediate_fields": [
+                    {
+                      "param_name": "next_id",
+                      "param_type": "parameter",
+                      "param_shift": 0,
+                      "dest_start": 0,
+                      "dest_width": 32
+                    }
+                  ]
+                },
+                {
+                  "action_name": "forwarding.duplicate_to_controller",
+                  "action_handle": 536870933,
+                  "table_name": "next_simple",
+                  "next_table": 0,
+                  "next_table_full": 96,
+                  "vliw_instruction": 2,
+                  "vliw_instruction_full": 65,
+                  "immediate_fields": [
+                    {
+                      "param_name": "constant_320",
+                      "param_type": "constant",
+                      "const_value": 320,
+                      "param_shift": 0,
+                      "dest_start": 0,
+                      "dest_width": 9
+                    }
+                  ]
+                },
+                {
+                  "action_name": "forwarding.drop",
+                  "action_handle": 536870934,
+                  "table_name": "next_simple",
+                  "next_table": 0,
+                  "next_table_full": 96,
+                  "vliw_instruction": 3,
+                  "vliw_instruction_full": 66,
+                  "immediate_fields": []
+                }
+              ]
+            }
+          }
+        ],
+        "match_type": "ternary"
+      },
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 67108872,
+          "name": "forwarding.acl_counter"
+        }
+      ],
+      "stateful_table_refs": [],
+      "actions": [
+        {
+          "name": "nop",
+          "handle": 536870935,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": []
+        },
+        {
+          "name": "forwarding.set_next_id",
+          "handle": 536870932,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "next_id",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 32
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "fabric_metadata.next_id" },
+              "src": [ { "type": "immediate", "name": "next_id" } ]
+            }
+          ]
+        },
+        {
+          "name": "forwarding.duplicate_to_controller",
+          "handle": 536870933,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "immediate", "name": "$constant0" },
+                { "type": "phv", "name": "H1" }
+              ]
+            }
+          ]
+        },
+        {
+          "name": "forwarding.drop",
+          "handle": 536870934,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.drop_ctl" },
+              "src": [
+                { "type": "immmediate", "name": "1" },
+                { "type": "phv", "name": "H2" }
+              ]
+            }
+          ]
+        }
+      ],
+      "default_action_handle": 536870935,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "ig_intr_md.ingress_port",
+          "position": 0,
+          "match_type": "ternary",
+          "start_bit": 0,
+          "bit_width": 9,
+          "bit_width_full": 9,
+          "is_valid": false,
+          "instance_name": "ig_intr_md",
+          "field_name": "ingress_port"
+        },
+        {
+          "name": "fabric_metadata.ip_proto",
+          "position": 1,
+          "match_type": "ternary",
+          "start_bit": 0,
+          "bit_width": 8,
+          "bit_width_full": 8,
+          "is_valid": false,
+          "instance_name": "fabric_metadata",
+          "field_name": "ip_proto"
+        },
+        {
+          "name": "fabric_metadata.l4_src_port",
+          "position": 2,
+          "match_type": "ternary",
+          "start_bit": 0,
+          "bit_width": 16,
+          "bit_width_full": 16,
+          "is_valid": false,
+          "instance_name": "fabric_metadata",
+          "field_name": "l4_src_port"
+        },
+        {
+          "name": "fabric_metadata.l4_dst_port",
+          "position": 3,
+          "match_type": "ternary",
+          "start_bit": 0,
+          "bit_width": 16,
+          "bit_width_full": 16,
+          "is_valid": false,
+          "instance_name": "fabric_metadata",
+          "field_name": "l4_dst_port"
+        },
+        {
+          "name": "fabric_metadata.original_ether_type",
+          "position": 4,
+          "match_type": "ternary",
+          "start_bit": 0,
+          "bit_width": 16,
+          "bit_width_full": 16,
+          "is_valid": false,
+          "instance_name": "fabric_metadata",
+          "field_name": "original_ether_type"
+        },
+        {
+          "name": "ethernet.dst_addr",
+          "position": 5,
+          "match_type": "ternary",
+          "start_bit": 0,
+          "bit_width": 48,
+          "bit_width_full": 48,
+          "is_valid": false,
+          "instance_name": "ethernet",
+          "field_name": "dst_addr"
+        },
+        {
+          "name": "ethernet.src_addr",
+          "position": 6,
+          "match_type": "ternary",
+          "start_bit": 0,
+          "bit_width": 48,
+          "bit_width_full": 48,
+          "is_valid": false,
+          "instance_name": "ethernet",
+          "field_name": "src_addr"
+        },
+        {
+          "name": "vlan_tag.vlan_id",
+          "position": 7,
+          "match_type": "ternary",
+          "start_bit": 0,
+          "bit_width": 12,
+          "bit_width_full": 12,
+          "is_valid": false,
+          "instance_name": "vlan_tag",
+          "field_name": "vlan_id"
+        },
+        {
+          "name": "ipv4.src_addr",
+          "position": 8,
+          "match_type": "ternary",
+          "start_bit": 0,
+          "bit_width": 32,
+          "bit_width_full": 32,
+          "is_valid": false,
+          "instance_name": "ipv4",
+          "field_name": "src_addr"
+        },
+        {
+          "name": "ipv4.dst_addr",
+          "position": 9,
+          "match_type": "ternary",
+          "start_bit": 0,
+          "bit_width": 32,
+          "bit_width_full": 32,
+          "is_valid": false,
+          "instance_name": "ipv4",
+          "field_name": "dst_addr"
+        },
+        {
+          "name": "icmp.icmp_type",
+          "position": 10,
+          "match_type": "ternary",
+          "start_bit": 0,
+          "bit_width": 8,
+          "bit_width_full": 8,
+          "is_valid": false,
+          "instance_name": "icmp",
+          "field_name": "icmp_type"
+        },
+        {
+          "name": "icmp.icmp_code",
+          "position": 11,
+          "match_type": "ternary",
+          "start_bit": 0,
+          "bit_width": 8,
+          "bit_width_full": 8,
+          "is_valid": false,
+          "instance_name": "icmp",
+          "field_name": "icmp_code"
+        }
+      ]
+    },
+    {
+      "direction": "ingress",
+      "handle": 67108872,
+      "name": "forwarding.acl_counter",
+      "table_type": "statistics",
+      "size": 0,
+      "stage_tables": [
+        {
+          "stage_number": 5,
+          "size": 2048,
+          "stage_table_type": "statistics",
+          "logical_table_id": 0,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 78 ], "vpns": [ 0 ] },
+              { "memory_units": [ 79 ], "vpns": [ 1 ] }
+            ],
+            "spare_bank_memory_unit": 79
+          },
+          "stats_alu_index": 3
+        }
+      ],
+      "how_referenced": "direct",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 36,
+      "packet_counter_resolution": 28,
+      "statistics_type": "packets_and_bytes"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777229,
+      "name": "next.simple",
+      "table_type": "match",
+      "size": 3072,
+      "action_data_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 33554433,
+          "name": "next_simple$action"
+        }
+      ],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 67108873,
+          "name": "next.simple_counter"
+        }
+      ],
+      "stateful_table_refs": [],
+      "default_action_handle": 0,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "fabric_metadata.next_id",
+          "position": 0,
+          "match_type": "exact",
+          "start_bit": 0,
+          "bit_width": 32,
+          "bit_width_full": 32,
+          "is_valid": false,
+          "instance_name": "fabric_metadata",
+          "field_name": "next_id"
+        }
+      ],
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 6,
+            "size": 3072,
+            "stage_table_type": "hash_match",
+            "logical_table_id": 0,
+            "has_attached_gateway": false,
+            "hash_functions": [
+              {
+                "hash_bits": [
+                  {
+                    "hash_bit": 0,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 1,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 2,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 3,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 4,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 5,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 6,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 7,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 8,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 9,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 10,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 11,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 12,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 13,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 14,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 15,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 16,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 17,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 18,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 19,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 20,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 21,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 22,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 23,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 24,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 25,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 26,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 27,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 28,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 29,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "action_format": [
+              {
+                "action_name": "NoAction",
+                "action_handle": 536870940,
+                "table_name": "next_hashed",
+                "next_table": 0,
+                "next_table_full": 114,
+                "vliw_instruction": 0,
+                "vliw_instruction_full": 65,
+                "immediate_fields": []
+              },
+              {
+                "action_name": "next.output",
+                "action_handle": 536870936,
+                "table_name": "next_hashed",
+                "next_table": 1,
+                "next_table_full": 114,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 64,
+                "immediate_fields": []
+              },
+              {
+                "action_name": "next.set_vlan_output",
+                "action_handle": 536870937,
+                "table_name": "next_hashed",
+                "next_table": 2,
+                "next_table_full": 114,
+                "vliw_instruction": 2,
+                "vliw_instruction_full": 66,
+                "immediate_fields": []
+              },
+              {
+                "action_name": "next.l3_routing",
+                "action_handle": 536870938,
+                "table_name": "next_hashed",
+                "next_table": 3,
+                "next_table_full": 114,
+                "vliw_instruction": 3,
+                "vliw_instruction_full": 68,
+                "immediate_fields": []
+              },
+              {
+                "action_name": "next.mpls_routing_v4",
+                "action_handle": 536870939,
+                "table_name": "next_hashed",
+                "next_table": 4,
+                "next_table_full": 114,
+                "vliw_instruction": 4,
+                "vliw_instruction_full": 70,
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_0",
+                    "param_type": "constant",
+                    "const_value": 0,
+                    "param_shift": 0,
+                    "dest_start": 1,
+                    "dest_width": 3
+                  },
+                  {
+                    "param_name": "constant_1",
+                    "param_type": "constant",
+                    "const_value": 1,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 1
+                  },
+                  {
+                    "param_name": "label",
+                    "param_type": "parameter",
+                    "param_shift": 0,
+                    "dest_start": 4,
+                    "dest_width": 4
+                  }
+                ]
+              }
+            ],
+            "result_physical_buses": [ 14 ],
+            "pack_format": [
+              {
+                "memory_word_width": 128,
+                "table_word_width": 128,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1
+              }
+            ],
+            "memory_resource_allocation": null,
+            "ways": [
+              {
+                "stage_number": 6,
+                "way_number": 0,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 3,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 8,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "lsb_mem_word_offset": 3,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "lsb_mem_word_offset": 12,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 34,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 16,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 24,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 11,
+                            "field_name": "--padding_11_11--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 32,
+                            "field_name": "--padding_32_33--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 88,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 40,
+                            "field_name": "--padding_40_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 0,
+                  "hash_entry_bit_hi": 9,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
+                }
+              },
+              {
+                "stage_number": 6,
+                "way_number": 1,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 3,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 8,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "lsb_mem_word_offset": 3,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "lsb_mem_word_offset": 12,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 34,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 16,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 24,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 11,
+                            "field_name": "--padding_11_11--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 32,
+                            "field_name": "--padding_32_33--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 88,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 40,
+                            "field_name": "--padding_40_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 10,
+                  "hash_entry_bit_hi": 19,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 87 ], "vpns": [ 1 ] } ]
+                }
+              },
+              {
+                "stage_number": 6,
+                "way_number": 2,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 3,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 8,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "lsb_mem_word_offset": 3,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "lsb_mem_word_offset": 12,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 34,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 16,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 24,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 11,
+                            "field_name": "--padding_11_11--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 32,
+                            "field_name": "--padding_32_33--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 88,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 40,
+                            "field_name": "--padding_40_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 20,
+                  "hash_entry_bit_hi": 29,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 88 ], "vpns": [ 2 ] } ]
+                }
+              }
+            ]
+          }
+        ],
+        "match_type": "exact",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "NoAction",
+          "handle": 536870940,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": []
+        },
+        {
+          "name": "next.output",
+          "handle": 536870936,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "port_num",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 9
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "action_param", "name": "port_num" },
+                { "type": "phv", "name": "H1" }
+              ]
+            }
+          ]
+        },
+        {
+          "name": "next.set_vlan_output",
+          "handle": 536870937,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "new_vlan_id",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 12
+            },
+            {
+              "name": "port_num",
+              "start_bit": 12,
+              "position": 1,
+              "bit_width": 9
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "vlan_tag.vlan_id" },
+              "src": [
+                { "type": "action_param", "name": "new_vlan_id" },
+                { "type": "phv", "name": "H3" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "fabric_metadata.pop_vlan_at_egress" },
+              "src": [
+                { "type": "immmediate", "name": "0" },
+                { "type": "phv", "name": "B8" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "action_param", "name": "port_num" },
+                { "type": "phv", "name": "H1" }
+              ]
+            }
+          ]
+        },
+        {
+          "name": "next.l3_routing",
+          "handle": 536870938,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "port_num",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 9
+            },
+            { "name": "smac", "start_bit": 9, "position": 1, "bit_width": 48 },
+            { "name": "dmac", "start_bit": 57, "position": 2, "bit_width": 48 }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "action_param", "name": "port_num" },
+                { "type": "phv", "name": "H1" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "dmac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "smac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "dmac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "smac.16-47" } ]
+            }
+          ]
+        },
+        {
+          "name": "next.mpls_routing_v4",
+          "handle": 536870939,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "port_num",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 9
+            },
+            { "name": "smac", "start_bit": 9, "position": 1, "bit_width": 48 },
+            { "name": "dmac", "start_bit": 57, "position": 2, "bit_width": 48 },
+            {
+              "name": "label",
+              "start_bit": 105,
+              "position": 3,
+              "bit_width": 20
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "action_param", "name": "port_num" },
+                { "type": "phv", "name": "H1" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.$valid" },
+              "src": [
+                { "type": "immmediate", "name": "1" },
+                { "type": "phv", "name": "B7" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "vlan_tag.ether_type" },
+              "src": [ { "immediate": "34887" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.ttl" },
+              "src": [ { "immediate": "64" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.label.4-19" },
+              "src": [ { "type": "action_param", "name": "label.4-19" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "dmac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "smac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "dmac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "smac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "B2" },
+              "src": [ { "type": "immediate", "name": "$data0" } ]
+            }
+          ]
+        }
+      ]
+    },
+    {
+      "direction": "ingress",
+      "handle": 67108873,
+      "name": "next.simple_counter",
+      "table_type": "statistics",
+      "size": 0,
+      "stage_tables": [
+        {
+          "stage_number": 6,
+          "size": 4096,
+          "stage_table_type": "statistics",
+          "logical_table_id": 0,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 78 ], "vpns": [ 0 ] },
+              { "memory_units": [ 79 ], "vpns": [ 1 ] },
+              { "memory_units": [ 80 ], "vpns": [ 2 ] }
+            ],
+            "spare_bank_memory_unit": 80
+          },
+          "stats_alu_index": 3
+        }
+      ],
+      "how_referenced": "direct",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 36,
+      "packet_counter_resolution": 28,
+      "statistics_type": "packets_and_bytes"
+    },
+    {
+      "direction": "ingress",
+      "handle": 33554433,
+      "name": "next_simple$action",
+      "table_type": "action",
+      "size": 3072,
+      "stage_tables": [
+        {
+          "stage_number": 6,
+          "size": 3072,
+          "stage_table_type": "action_data",
+          "logical_table_id": 0,
+          "pack_format": [
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 128,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_127--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870940
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 9,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 48,
+                      "field_name": "port_num"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 48,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_47--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 71,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 57,
+                      "field_name": "--padding_57_127--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870936
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 9,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 32,
+                      "field_name": "port_num"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 12,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 48,
+                      "field_name": "new_vlan_id"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_31--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 41,
+                      "field_name": "--padding_41_47--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 68,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 60,
+                      "field_name": "--padding_60_127--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870937
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 9,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 16,
+                      "field_name": "port_num"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 32,
+                      "field_name": "dmac"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 48,
+                      "field_name": "smac"
+                    },
+                    {
+                      "start_bit": 16,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "dmac"
+                    },
+                    {
+                      "start_bit": 16,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "smac"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_15--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 25,
+                      "field_name": "--padding_25_31--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870938
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 9,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "port_num"
+                    },
+                    {
+                      "start_bit": 4,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 16,
+                      "field_name": "label"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 32,
+                      "field_name": "dmac"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 48,
+                      "field_name": "smac"
+                    },
+                    {
+                      "start_bit": 16,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "dmac"
+                    },
+                    {
+                      "start_bit": 16,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "smac"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 9,
+                      "field_name": "--padding_9_15--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870939
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 90 ], "vpns": [ 0 ] },
+              { "memory_units": [ 91 ], "vpns": [ 1 ] },
+              { "memory_units": [ 92 ], "vpns": [ 2 ] }
+            ],
+            "spare_bank_memory_unit": 92
+          }
+        }
+      ],
+      "actions": [
+        {
+          "name": "NoAction",
+          "handle": 536870940,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": []
+        },
+        {
+          "name": "next.output",
+          "handle": 536870936,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "port_num",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 9
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "action_param", "name": "port_num" },
+                { "type": "phv", "name": "H1" }
+              ]
+            }
+          ]
+        },
+        {
+          "name": "next.set_vlan_output",
+          "handle": 536870937,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "new_vlan_id",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 12
+            },
+            {
+              "name": "port_num",
+              "start_bit": 12,
+              "position": 1,
+              "bit_width": 9
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "vlan_tag.vlan_id" },
+              "src": [
+                { "type": "action_param", "name": "new_vlan_id" },
+                { "type": "phv", "name": "H3" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "fabric_metadata.pop_vlan_at_egress" },
+              "src": [
+                { "type": "immmediate", "name": "0" },
+                { "type": "phv", "name": "B8" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "action_param", "name": "port_num" },
+                { "type": "phv", "name": "H1" }
+              ]
+            }
+          ]
+        },
+        {
+          "name": "next.l3_routing",
+          "handle": 536870938,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "port_num",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 9
+            },
+            { "name": "smac", "start_bit": 9, "position": 1, "bit_width": 48 },
+            { "name": "dmac", "start_bit": 57, "position": 2, "bit_width": 48 }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "action_param", "name": "port_num" },
+                { "type": "phv", "name": "H1" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "dmac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "smac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "dmac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "smac.16-47" } ]
+            }
+          ]
+        },
+        {
+          "name": "next.mpls_routing_v4",
+          "handle": 536870939,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "port_num",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 9
+            },
+            { "name": "smac", "start_bit": 9, "position": 1, "bit_width": 48 },
+            { "name": "dmac", "start_bit": 57, "position": 2, "bit_width": 48 },
+            {
+              "name": "label",
+              "start_bit": 105,
+              "position": 3,
+              "bit_width": 20
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "action_param", "name": "port_num" },
+                { "type": "phv", "name": "H1" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.$valid" },
+              "src": [
+                { "type": "immmediate", "name": "1" },
+                { "type": "phv", "name": "B7" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "vlan_tag.ether_type" },
+              "src": [ { "immediate": "34887" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.ttl" },
+              "src": [ { "immediate": "64" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.label.4-19" },
+              "src": [ { "type": "action_param", "name": "label.4-19" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "dmac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "smac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "dmac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "smac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "B2" },
+              "src": [ { "type": "immediate", "name": "$data0" } ]
+            }
+          ]
+        }
+      ],
+      "how_referenced": "direct"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777230,
+      "name": "tbl_act_2",
+      "table_type": "match",
+      "size": 1,
+      "preferred_match_type": "exact",
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 7,
+            "size": 1,
+            "stage_table_type": "match_with_no_key",
+            "logical_table_id": 1,
+            "has_attached_gateway": true,
+            "memory_resource_allocation": null,
+            "default_next_table": 255,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 0,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 0
+              }
+            ],
+            "result_physical_buses": [ 0 ],
+            "action_format": [
+              {
+                "action_name": "act_2",
+                "action_handle": 536870941,
+                "table_name": "next_hashed",
+                "next_table": 0,
+                "next_table_full": 114,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 64,
+                "immediate_fields": []
+              }
+            ],
+            "hash_functions": []
+          }
+        ],
+        "match_type": "match_with_no_key",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "act_2",
+          "handle": 536870941,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dest": { "type": "phv", "name": "ipv4.ttl" },
+              "src": [
+                { "type": "immmediate", "name": "255" },
+                { "type": "phv", "name": "B4" }
+              ]
+            }
+          ]
+        }
+      ],
+      "default_action_handle": 536870941,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "performs_hash_action": false,
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": []
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777231,
+      "name": "next.hashed",
+      "table_type": "match",
+      "size": 3072,
+      "action_data_table_refs": [
+        {
+          "how_referenced": "indirect",
+          "handle": 33554434,
+          "name": "next.ecmp_selector"
+        }
+      ],
+      "selection_table_refs": [
+        {
+          "how_referenced": "indirect",
+          "handle": 50331649,
+          "name": "next.ecmp_selector"
+        }
+      ],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 67108874,
+          "name": "next.hashed_counter"
+        }
+      ],
+      "stateful_table_refs": [],
+      "default_selector_mask": 0,
+      "default_selector_value": 0,
+      "default_action_handle": 0,
+      "action_profile": "next.ecmp_selector",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "fabric_metadata.next_id",
+          "position": 0,
+          "match_type": "exact",
+          "start_bit": 0,
+          "bit_width": 32,
+          "bit_width_full": 32,
+          "is_valid": false,
+          "instance_name": "fabric_metadata",
+          "field_name": "next_id"
+        }
+      ],
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 7,
+            "size": 3072,
+            "stage_table_type": "hash_match",
+            "logical_table_id": 2,
+            "has_attached_gateway": false,
+            "hash_functions": [
+              {
+                "hash_bits": [
+                  {
+                    "hash_bit": 0,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 1,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 2,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 3,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 4,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 5,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 6,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 7,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 8,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 9,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 10,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 11,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 12,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 13,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 14,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 15,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 16,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 17,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 18,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 19,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 20,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 21,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 22,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 23,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 24,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 25,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 26,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 27,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 28,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 29,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "action_format": [
+              {
+                "action_name": "NoAction",
+                "action_handle": 536870945,
+                "table_name": "tbl_act_13",
+                "next_table": 0,
+                "next_table_full": 128,
+                "vliw_instruction": 0,
+                "vliw_instruction_full": 67,
+                "immediate_fields": []
+              },
+              {
+                "action_name": "next.l3_routing",
+                "action_handle": 536870942,
+                "table_name": "tbl_act_13",
+                "next_table": 0,
+                "next_table_full": 128,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 65,
+                "immediate_fields": []
+              },
+              {
+                "action_name": "next.mpls_routing_v4",
+                "action_handle": 536870943,
+                "table_name": "tbl_act_13",
+                "next_table": 0,
+                "next_table_full": 128,
+                "vliw_instruction": 2,
+                "vliw_instruction_full": 66,
+                "immediate_fields": []
+              },
+              {
+                "action_name": "next.mpls_routing_v6",
+                "action_handle": 536870944,
+                "table_name": "tbl_act_13",
+                "next_table": 0,
+                "next_table_full": 128,
+                "vliw_instruction": 3,
+                "vliw_instruction_full": 68,
+                "immediate_fields": []
+              }
+            ],
+            "result_physical_buses": [ 14 ],
+            "pack_format": [
+              {
+                "memory_word_width": 128,
+                "table_word_width": 128,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1
+              }
+            ],
+            "memory_resource_allocation": null,
+            "ways": [
+              {
+                "stage_number": 7,
+                "way_number": 0,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "start_bit": 7,
+                            "enable_pfe": true,
+                            "field_width": 10,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "sel_ptr",
+                            "lsb_mem_word_offset": 2,
+                            "field_name": "meter_addr",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 5,
+                            "enable_pfe": false,
+                            "field_width": 11,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "adt_ptr",
+                            "lsb_mem_word_offset": 13,
+                            "field_name": "action_addr",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 42,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 24,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 40,
+                            "field_name": "--padding_40_41--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 64,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 48,
+                            "field_name": "--padding_48_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 0,
+                  "hash_entry_bit_hi": 9,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
+                }
+              },
+              {
+                "stage_number": 7,
+                "way_number": 1,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "start_bit": 7,
+                            "enable_pfe": true,
+                            "field_width": 10,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "sel_ptr",
+                            "lsb_mem_word_offset": 2,
+                            "field_name": "meter_addr",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 5,
+                            "enable_pfe": false,
+                            "field_width": 11,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "adt_ptr",
+                            "lsb_mem_word_offset": 13,
+                            "field_name": "action_addr",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 42,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 24,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 40,
+                            "field_name": "--padding_40_41--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 64,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 48,
+                            "field_name": "--padding_48_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 10,
+                  "hash_entry_bit_hi": 19,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 87 ], "vpns": [ 1 ] } ]
+                }
+              },
+              {
+                "stage_number": 7,
+                "way_number": 2,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "start_bit": 7,
+                            "enable_pfe": true,
+                            "field_width": 10,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "sel_ptr",
+                            "lsb_mem_word_offset": 2,
+                            "field_name": "meter_addr",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 5,
+                            "enable_pfe": false,
+                            "field_width": 11,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "adt_ptr",
+                            "lsb_mem_word_offset": 13,
+                            "field_name": "action_addr",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 42,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 24,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 40,
+                            "field_name": "--padding_40_41--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 64,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 48,
+                            "field_name": "--padding_48_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 20,
+                  "hash_entry_bit_hi": 29,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 88 ], "vpns": [ 2 ] } ]
+                }
+              }
+            ]
+          }
+        ],
+        "match_type": "exact",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "NoAction",
+          "handle": 536870945,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": []
+        },
+        {
+          "name": "next.l3_routing",
+          "handle": 536870942,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "port_num",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 9
+            },
+            { "name": "smac", "start_bit": 9, "position": 1, "bit_width": 48 },
+            { "name": "dmac", "start_bit": 57, "position": 2, "bit_width": 48 }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "action_param", "name": "port_num" },
+                { "type": "phv", "name": "H1" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "dmac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "smac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "dmac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "smac.16-47" } ]
+            }
+          ]
+        },
+        {
+          "name": "next.mpls_routing_v4",
+          "handle": 536870943,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "port_num",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 9
+            },
+            { "name": "smac", "start_bit": 9, "position": 1, "bit_width": 48 },
+            { "name": "dmac", "start_bit": 57, "position": 2, "bit_width": 48 },
+            {
+              "name": "label",
+              "start_bit": 105,
+              "position": 3,
+              "bit_width": 20
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "action_param", "name": "port_num" },
+                { "type": "phv", "name": "H1" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.$valid" },
+              "src": [
+                { "type": "immmediate", "name": "1" },
+                { "type": "phv", "name": "B7" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "vlan_tag.ether_type" },
+              "src": [ { "immediate": "34887" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.ttl" },
+              "src": [ { "immediate": "64" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.label.4-19" },
+              "src": [ { "type": "action_param", "name": "label.4-19" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "dmac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "smac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "dmac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "smac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "B2" },
+              "src": [ { "type": "action_param", "name": "$data0" } ]
+            }
+          ]
+        },
+        {
+          "name": "next.mpls_routing_v6",
+          "handle": 536870944,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "port_num",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 9
+            },
+            { "name": "smac", "start_bit": 9, "position": 1, "bit_width": 48 },
+            { "name": "dmac", "start_bit": 57, "position": 2, "bit_width": 48 },
+            {
+              "name": "label",
+              "start_bit": 105,
+              "position": 3,
+              "bit_width": 20
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "action_param", "name": "port_num" },
+                { "type": "phv", "name": "H1" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.$valid" },
+              "src": [
+                { "type": "immmediate", "name": "1" },
+                { "type": "phv", "name": "B7" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "vlan_tag.ether_type" },
+              "src": [ { "immediate": "34887" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.ttl" },
+              "src": [ { "immediate": "64" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.label.4-19" },
+              "src": [ { "type": "action_param", "name": "label.4-19" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "dmac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "smac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "dmac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "smac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "B2" },
+              "src": [ { "type": "action_param", "name": "$data0" } ]
+            }
+          ]
+        }
+      ]
+    },
+    {
+      "direction": "ingress",
+      "handle": 50331649,
+      "name": "next.ecmp_selector",
+      "table_type": "selection",
+      "size": 1024,
+      "selection_type": "fair",
+      "how_referenced": "indirect",
+      "max_port_pool_size": 120,
+      "bound_to_action_data_table_handle": 33554434,
+      "stage_tables": [
+        {
+          "stage_number": 7,
+          "size": 1024,
+          "stage_table_type": "selection",
+          "logical_table_id": 2,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [ { "memory_units": [ 90 ], "vpns": [ 0 ] } ],
+            "spare_bank_memory_unit": 91
+          },
+          "meter_alu_index": 3
+        }
+      ]
+    },
+    {
+      "direction": "ingress",
+      "handle": 33554434,
+      "name": "next.ecmp_selector",
+      "table_type": "action",
+      "size": 64,
+      "stage_tables": [
+        {
+          "stage_number": 7,
+          "size": 262144,
+          "stage_table_type": "action_data",
+          "logical_table_id": 2,
+          "pack_format": [
+            {
+              "memory_word_width": 128,
+              "table_word_width": 256,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 2,
+              "entries": [
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 256,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 1,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870945
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 256,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 2,
+              "entries": [
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 9,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 48,
+                      "field_name": "port_num"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "dmac"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 80,
+                      "field_name": "smac"
+                    },
+                    {
+                      "start_bit": 16,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 1,
+                      "msb_mem_word_idx": 1,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "dmac"
+                    },
+                    {
+                      "start_bit": 16,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 1,
+                      "msb_mem_word_idx": 1,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "smac"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 48,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_47--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 57,
+                      "field_name": "--padding_57_63--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 96,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 1,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "--padding_96_191--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870942
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 256,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 2,
+              "entries": [
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 3 } ],
+                      "lsb_mem_word_offset": 1,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 4,
+                      "field_name": "label"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 9,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 32,
+                      "field_name": "port_num"
+                    },
+                    {
+                      "start_bit": 4,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 48,
+                      "field_name": "label"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "dmac"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 80,
+                      "field_name": "smac"
+                    },
+                    {
+                      "start_bit": 16,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 1,
+                      "msb_mem_word_idx": 1,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "dmac"
+                    },
+                    {
+                      "start_bit": 16,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 1,
+                      "msb_mem_word_idx": 1,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "smac"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 24,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 8,
+                      "field_name": "--padding_8_31--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 41,
+                      "field_name": "--padding_41_47--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 96,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 1,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "--padding_96_191--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870943
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 256,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 2,
+              "entries": [
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 3 } ],
+                      "lsb_mem_word_offset": 1,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 4,
+                      "field_name": "label"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 9,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 32,
+                      "field_name": "port_num"
+                    },
+                    {
+                      "start_bit": 4,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 48,
+                      "field_name": "label"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "dmac"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 80,
+                      "field_name": "smac"
+                    },
+                    {
+                      "start_bit": 16,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 1,
+                      "msb_mem_word_idx": 1,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "dmac"
+                    },
+                    {
+                      "start_bit": 16,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 1,
+                      "msb_mem_word_idx": 1,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "smac"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 24,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 8,
+                      "field_name": "--padding_8_31--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 41,
+                      "field_name": "--padding_41_47--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 96,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 1,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "--padding_96_191--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870944
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [ { "memory_units": [ 89, 92 ], "vpns": [ 0 ] } ],
+            "spare_bank_memory_unit": [ 92, 89 ]
+          }
+        }
+      ],
+      "actions": [
+        {
+          "name": "NoAction",
+          "handle": 536870945,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": []
+        },
+        {
+          "name": "next.l3_routing",
+          "handle": 536870942,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "port_num",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 9
+            },
+            { "name": "smac", "start_bit": 9, "position": 1, "bit_width": 48 },
+            { "name": "dmac", "start_bit": 57, "position": 2, "bit_width": 48 }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "action_param", "name": "port_num" },
+                { "type": "phv", "name": "H1" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "dmac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "smac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "dmac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "smac.16-47" } ]
+            }
+          ]
+        },
+        {
+          "name": "next.mpls_routing_v4",
+          "handle": 536870943,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "port_num",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 9
+            },
+            { "name": "smac", "start_bit": 9, "position": 1, "bit_width": 48 },
+            { "name": "dmac", "start_bit": 57, "position": 2, "bit_width": 48 },
+            {
+              "name": "label",
+              "start_bit": 105,
+              "position": 3,
+              "bit_width": 20
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "action_param", "name": "port_num" },
+                { "type": "phv", "name": "H1" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.$valid" },
+              "src": [
+                { "type": "immmediate", "name": "1" },
+                { "type": "phv", "name": "B7" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "vlan_tag.ether_type" },
+              "src": [ { "immediate": "34887" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.ttl" },
+              "src": [ { "immediate": "64" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.label.4-19" },
+              "src": [ { "type": "action_param", "name": "label.4-19" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "dmac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "smac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "dmac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "smac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "B2" },
+              "src": [ { "type": "action_param", "name": "$data0" } ]
+            }
+          ]
+        },
+        {
+          "name": "next.mpls_routing_v6",
+          "handle": 536870944,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "port_num",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 9
+            },
+            { "name": "smac", "start_bit": 9, "position": 1, "bit_width": 48 },
+            { "name": "dmac", "start_bit": 57, "position": 2, "bit_width": 48 },
+            {
+              "name": "label",
+              "start_bit": 105,
+              "position": 3,
+              "bit_width": 20
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "action_param", "name": "port_num" },
+                { "type": "phv", "name": "H1" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.$valid" },
+              "src": [
+                { "type": "immmediate", "name": "1" },
+                { "type": "phv", "name": "B7" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "vlan_tag.ether_type" },
+              "src": [ { "immediate": "34887" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.ttl" },
+              "src": [ { "immediate": "64" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.label.4-19" },
+              "src": [ { "type": "action_param", "name": "label.4-19" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "dmac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "smac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "dmac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "smac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "B2" },
+              "src": [ { "type": "action_param", "name": "$data0" } ]
+            }
+          ]
+        }
+      ],
+      "how_referenced": "indirect"
+    },
+    {
+      "direction": "ingress",
+      "handle": 67108874,
+      "name": "next.hashed_counter",
+      "table_type": "statistics",
+      "size": 0,
+      "stage_tables": [
+        {
+          "stage_number": 7,
+          "size": 4096,
+          "stage_table_type": "statistics",
+          "logical_table_id": 2,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 78 ], "vpns": [ 0 ] },
+              { "memory_units": [ 79 ], "vpns": [ 1 ] },
+              { "memory_units": [ 80 ], "vpns": [ 2 ] }
+            ],
+            "spare_bank_memory_unit": 80
+          },
+          "stats_alu_index": 3
+        }
+      ],
+      "how_referenced": "direct",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 36,
+      "packet_counter_resolution": 28,
+      "statistics_type": "packets_and_bytes"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777232,
+      "name": "tbl_act_5",
+      "table_type": "match",
+      "size": 1,
+      "preferred_match_type": "exact",
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 8,
+            "size": 1,
+            "stage_table_type": "match_with_no_key",
+            "logical_table_id": 0,
+            "has_attached_gateway": true,
+            "memory_resource_allocation": null,
+            "default_next_table": 255,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 0,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 0
+              }
+            ],
+            "result_physical_buses": [ 1 ],
+            "action_format": [
+              {
+                "action_name": "act_5",
+                "action_handle": 536870946,
+                "table_name": "tbl_act_11",
+                "next_table": 0,
+                "next_table_full": 129,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 64,
+                "immediate_fields": []
+              }
+            ],
+            "hash_functions": []
+          }
+        ],
+        "match_type": "match_with_no_key",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "act_5",
+          "handle": 536870946,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.ether_type" },
+              "src": [ { "type": "phv", "name": "H8" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "vlan_tag.$valid" },
+              "src": [
+                { "type": "immmediate", "name": "0" },
+                { "type": "phv", "name": "B8" }
+              ]
+            }
+          ]
+        }
+      ],
+      "default_action_handle": 536870946,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "performs_hash_action": false,
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": []
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777233,
+      "name": "tbl_act_3",
+      "table_type": "match",
+      "size": 512,
+      "preferred_match_type": "exact",
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 8,
+            "size": 1,
+            "stage_table_type": "match_with_no_key",
+            "logical_table_id": 1,
+            "has_attached_gateway": true,
+            "memory_resource_allocation": null,
+            "default_next_table": 255,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 0,
+                "entries_per_table_word": 0,
+                "number_memory_units_per_table_word": 0
+              }
+            ],
+            "result_physical_buses": [ 0 ],
+            "action_format": [
+              {
+                "action_name": "act_3",
+                "action_handle": 536870947,
+                "table_name": "next_broadcast",
+                "next_table": 0,
+                "next_table_full": 130,
+                "vliw_instruction": 0,
+                "vliw_instruction_full": 65,
+                "immediate_fields": []
+              }
+            ],
+            "hash_functions": []
+          }
+        ],
+        "match_type": "match_with_no_key",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "act_3",
+          "handle": 536870947,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": []
+        }
+      ],
+      "default_action_handle": 536870947,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "performs_hash_action": true,
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "indirect",
+          "handle": 67108875,
+          "name": "port_counters_control.egress_port_counter"
+        }
+      ],
+      "stateful_table_refs": []
+    },
+    {
+      "direction": "ingress",
+      "handle": 67108875,
+      "name": "port_counters_control.egress_port_counter",
+      "table_type": "statistics",
+      "size": 511,
+      "stage_tables": [
+        {
+          "stage_number": 8,
+          "size": 4096,
+          "stage_table_type": "statistics",
+          "logical_table_id": 1,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 4,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 54 ], "vpns": [ 0 ] },
+              { "memory_units": [ 55 ], "vpns": [ 1 ] }
+            ],
+            "spare_bank_memory_unit": 55
+          },
+          "stats_alu_index": 2
+        }
+      ],
+      "how_referenced": "indirect",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 0,
+      "packet_counter_resolution": 32,
+      "statistics_type": "packets"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777234,
+      "name": "next.broadcast",
+      "table_type": "match",
+      "size": 3072,
+      "action_data_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 33554435,
+          "name": "next_broadcast$action"
+        }
+      ],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 67108876,
+          "name": "next.broadcast_counter"
+        }
+      ],
+      "stateful_table_refs": [],
+      "default_action_handle": 0,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "fabric_metadata.next_id",
+          "position": 0,
+          "match_type": "exact",
+          "start_bit": 0,
+          "bit_width": 32,
+          "bit_width_full": 32,
+          "is_valid": false,
+          "instance_name": "fabric_metadata",
+          "field_name": "next_id"
+        }
+      ],
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 8,
+            "size": 3072,
+            "stage_table_type": "hash_match",
+            "logical_table_id": 2,
+            "has_attached_gateway": false,
+            "hash_functions": [
+              {
+                "hash_bits": [
+                  {
+                    "hash_bit": 0,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 1,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 2,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 3,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 4,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 5,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 6,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 7,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 8,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 9,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 10,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 11,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 12,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 13,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 14,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 15,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 16,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 17,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 18,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 19,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 20,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 21,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 22,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 23,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 24,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 25,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 26,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 27,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 28,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 29,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "action_format": [
+              {
+                "action_name": "NoAction",
+                "action_handle": 536870949,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 255,
+                "vliw_instruction": 0,
+                "vliw_instruction_full": 65,
+                "immediate_fields": []
+              },
+              {
+                "action_name": "next.set_mcast_group",
+                "action_handle": 536870948,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 255,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 66,
+                "immediate_fields": [
+                  {
+                    "param_name": "gid",
+                    "param_type": "parameter",
+                    "param_shift": 0,
+                    "dest_start": 16,
+                    "dest_width": 16
+                  },
+                  {
+                    "param_name": "smac",
+                    "param_type": "parameter",
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              }
+            ],
+            "result_physical_buses": [ 14 ],
+            "pack_format": [
+              {
+                "memory_word_width": 128,
+                "table_word_width": 128,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1
+              }
+            ],
+            "memory_resource_allocation": null,
+            "ways": [
+              {
+                "stage_number": 8,
+                "way_number": 0,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 32,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 34,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 48,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 33,
+                            "field_name": "--padding_33_33--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 56,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 56,
+                            "field_name": "--padding_56_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 0,
+                  "hash_entry_bit_hi": 9,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
+                }
+              },
+              {
+                "stage_number": 8,
+                "way_number": 1,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 32,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 34,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 48,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 33,
+                            "field_name": "--padding_33_33--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 56,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 56,
+                            "field_name": "--padding_56_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 10,
+                  "hash_entry_bit_hi": 19,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 87 ], "vpns": [ 1 ] } ]
+                }
+              },
+              {
+                "stage_number": 8,
+                "way_number": 2,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 32,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 34,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 48,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 33,
+                            "field_name": "--padding_33_33--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 56,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 56,
+                            "field_name": "--padding_56_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 20,
+                  "hash_entry_bit_hi": 29,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 88 ], "vpns": [ 2 ] } ]
+                }
+              }
+            ]
+          }
+        ],
+        "match_type": "exact",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "NoAction",
+          "handle": 536870949,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": []
+        },
+        {
+          "name": "next.set_mcast_group",
+          "handle": 536870948,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            { "name": "gid", "start_bit": 0, "position": 0, "bit_width": 16 },
+            { "name": "smac", "start_bit": 16, "position": 1, "bit_width": 48 }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.mcast_grp_a" },
+              "src": [ { "type": "immediate", "name": "gid" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.0-15" },
+              "src": [ { "type": "immediate", "name": "smac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "smac.16-47" } ]
+            }
+          ]
+        }
+      ]
+    },
+    {
+      "direction": "ingress",
+      "handle": 67108876,
+      "name": "next.broadcast_counter",
+      "table_type": "statistics",
+      "size": 0,
+      "stage_tables": [
+        {
+          "stage_number": 8,
+          "size": 4096,
+          "stage_table_type": "statistics",
+          "logical_table_id": 2,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 78 ], "vpns": [ 0 ] },
+              { "memory_units": [ 79 ], "vpns": [ 1 ] },
+              { "memory_units": [ 80 ], "vpns": [ 2 ] }
+            ],
+            "spare_bank_memory_unit": 80
+          },
+          "stats_alu_index": 3
+        }
+      ],
+      "how_referenced": "direct",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 36,
+      "packet_counter_resolution": 28,
+      "statistics_type": "packets_and_bytes"
+    },
+    {
+      "direction": "ingress",
+      "handle": 33554435,
+      "name": "next_broadcast$action",
+      "table_type": "action",
+      "size": 4096,
+      "stage_tables": [
+        {
+          "stage_number": 8,
+          "size": 4096,
+          "stage_table_type": "action_data",
+          "logical_table_id": 2,
+          "pack_format": [
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 4,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 3,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "--padding_0_31--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 2,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_31--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 32,
+                      "field_name": "--padding_0_31--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_31--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870949
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 4,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 3,
+                  "fields": [
+                    {
+                      "start_bit": 16,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "smac"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 2,
+                  "fields": [
+                    {
+                      "start_bit": 16,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "smac"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 16,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 32,
+                      "field_name": "smac"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 16,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "smac"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870948
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [ { "memory_units": [ 90 ], "vpns": [ 0 ] } ],
+            "spare_bank_memory_unit": 90
+          }
+        }
+      ],
+      "actions": [
+        {
+          "name": "NoAction",
+          "handle": 536870949,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": []
+        },
+        {
+          "name": "next.set_mcast_group",
+          "handle": 536870948,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            { "name": "gid", "start_bit": 0, "position": 0, "bit_width": 16 },
+            { "name": "smac", "start_bit": 16, "position": 1, "bit_width": 48 }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.mcast_grp_a" },
+              "src": [ { "type": "immediate", "name": "gid" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.0-15" },
+              "src": [ { "type": "immediate", "name": "smac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "smac.16-47" } ]
+            }
+          ]
+        }
+      ],
+      "how_referenced": "direct"
+    }
+  ],
+  "configuration_cache": [
+    {
+      "fully_qualified_name": "pmarb.ebp18_reg.ebp_reg[0].epb_prsr_port_regs.chnl_ctrl[0]",
+      "name": "parser0_chnl_ctrl_0",
+      "value": "00a41fff"
+    },
+    {
+      "fully_qualified_name": "pmarb.ebp18_reg.ebp_reg[0].epb_prsr_port_regs.chnl_ctrl[1]",
+      "name": "parser0_chnl_ctrl_1",
+      "value": "00a41fff"
+    },
+    {
+      "fully_qualified_name": "pmarb.ebp18_reg.ebp_reg[0].epb_prsr_port_regs.chnl_ctrl[2]",
+      "name": "parser0_chnl_ctrl_2",
+      "value": "00a41fff"
+    },
+    {
+      "fully_qualified_name": "pmarb.ebp18_reg.ebp_reg[0].epb_prsr_port_regs.chnl_ctrl[3]",
+      "name": "parser0_chnl_ctrl_3",
+      "value": "00a41fff"
+    },
+    {
+      "fully_qualified_name": "pmarb.ebp18_reg.ebp_reg[0].epb_prsr_port_regs.multi_threading",
+      "name": "parser0_multi_threading",
+      "value": "19522020"
+    },
+    {
+      "fully_qualified_name": "mau[0].dp.match_input_xbar_din_power_ctl",
+      "name": "stage_0_match_input_xbar_din_power_ctl",
+      "value": "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[1].dp.match_input_xbar_din_power_ctl",
+      "name": "stage_1_match_input_xbar_din_power_ctl",
+      "value": "0000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[2].dp.match_input_xbar_din_power_ctl",
+      "name": "stage_2_match_input_xbar_din_power_ctl",
+      "value": "0000000000000000000000000000000000000080000000010000000000000000000000280000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[2].dp.xbar_hash.hash.parity_group_mask",
+      "name": "stage_2_parity_group_mask",
+      "value": "00000001000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[3].dp.match_input_xbar_din_power_ctl",
+      "name": "stage_3_match_input_xbar_din_power_ctl",
+      "value": "0000000100000000000000000000000000000000000000000000000000000000000000200000001200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[3].dp.xbar_hash.hash.parity_group_mask",
+      "name": "stage_3_parity_group_mask",
+      "value": "00000003000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[4].dp.match_input_xbar_din_power_ctl",
+      "name": "stage_4_match_input_xbar_din_power_ctl",
+      "value": "00000009000000000000000000000000000000040000000000000000000000000000001c0000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[4].dp.xbar_hash.hash.parity_group_mask",
+      "name": "stage_4_parity_group_mask",
+      "value": "00000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[5].dp.match_input_xbar_din_power_ctl",
+      "name": "stage_5_match_input_xbar_din_power_ctl",
+      "value": "0000000f00000000000000000000000000000043000000000000000000000000000000680000001e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[6].dp.match_input_xbar_din_power_ctl",
+      "name": "stage_6_match_input_xbar_din_power_ctl",
+      "value": "0000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[6].dp.xbar_hash.hash.parity_group_mask",
+      "name": "stage_6_parity_group_mask",
+      "value": "00000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[7].dp.match_input_xbar_din_power_ctl",
+      "name": "stage_7_match_input_xbar_din_power_ctl",
+      "value": "00000013000000000000000000000000000000c0000000000000000000000000000000400000000e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[7].dp.xbar_hash.hash.parity_group_mask",
+      "name": "stage_7_parity_group_mask",
+      "value": "00000001000000000000000e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[8].dp.match_input_xbar_din_power_ctl",
+      "name": "stage_8_match_input_xbar_din_power_ctl",
+      "value": "0000001000000000000000000000000000000000000000010000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[8].dp.xbar_hash.hash.parity_group_mask",
+      "name": "stage_8_parity_group_mask",
+      "value": "00000001000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/pipelines/fabric-hw/src/main/resources/p4c-out/tofino/fabric/mavericks/fabric.p4info b/pipelines/fabric-hw/src/main/resources/p4c-out/tofino/fabric/mavericks/fabric.p4info
new file mode 100644
index 0000000..80e0880
--- /dev/null
+++ b/pipelines/fabric-hw/src/main/resources/p4c-out/tofino/fabric/mavericks/fabric.p4info
@@ -0,0 +1,740 @@
+tables {
+  preamble {
+    id: 33578399
+    name: "filtering.ingress_port_vlan"
+    alias: "ingress_port_vlan"
+  }
+  match_fields {
+    id: 1
+    name: "standard_metadata.ingress_port"
+    bitwidth: 9
+    match_type: EXACT
+  }
+  match_fields {
+    id: 2
+    name: "hdr.vlan_tag.is_valid"
+    bitwidth: 1
+    match_type: EXACT
+  }
+  match_fields {
+    id: 3
+    name: "hdr.vlan_tag.vlan_id"
+    bitwidth: 12
+    match_type: TERNARY
+  }
+  action_refs {
+    id: 16794505
+  }
+  action_refs {
+    id: 16782367
+  }
+  action_refs {
+    id: 16819938
+  }
+  action_refs {
+    id: 16826365
+  }
+  const_default_action_id: 16819938
+  direct_resource_ids: 302015144
+  size: 1024
+}
+tables {
+  preamble {
+    id: 33619540
+    name: "filtering.fwd_classifier"
+    alias: "fwd_classifier"
+  }
+  match_fields {
+    id: 1
+    name: "standard_metadata.ingress_port"
+    bitwidth: 9
+    match_type: EXACT
+  }
+  match_fields {
+    id: 2
+    name: "hdr.ethernet.dst_addr"
+    bitwidth: 48
+    match_type: EXACT
+  }
+  match_fields {
+    id: 3
+    name: "fabric_metadata.original_ether_type"
+    bitwidth: 16
+    match_type: EXACT
+  }
+  action_refs {
+    id: 16838162
+  }
+  const_default_action_id: 16838162
+  direct_resource_ids: 302033694
+  size: 1024
+}
+tables {
+  preamble {
+    id: 33569146
+    name: "forwarding.bridging"
+    alias: "bridging"
+  }
+  match_fields {
+    id: 1
+    name: "hdr.vlan_tag.vlan_id"
+    bitwidth: 12
+    match_type: EXACT
+  }
+  match_fields {
+    id: 2
+    name: "hdr.ethernet.dst_addr"
+    bitwidth: 48
+    match_type: TERNARY
+  }
+  action_refs {
+    id: 16829931
+  }
+  action_refs {
+    id: 16800567
+    annotations: "@defaultonly()"
+  }
+  direct_resource_ids: 302047449
+  size: 1024
+}
+tables {
+  preamble {
+    id: 33565386
+    name: "forwarding.mpls"
+    alias: "mpls"
+  }
+  match_fields {
+    id: 1
+    name: "hdr.mpls.label"
+    bitwidth: 20
+    match_type: EXACT
+  }
+  action_refs {
+    id: 16842717
+  }
+  action_refs {
+    id: 16800567
+    annotations: "@defaultonly()"
+  }
+  direct_resource_ids: 302001577
+  size: 1024
+}
+tables {
+  preamble {
+    id: 33589684
+    name: "forwarding.unicast_v4"
+    alias: "unicast_v4"
+  }
+  match_fields {
+    id: 1
+    name: "hdr.ipv4.dst_addr"
+    bitwidth: 32
+    match_type: LPM
+  }
+  action_refs {
+    id: 16829931
+  }
+  action_refs {
+    id: 16800567
+    annotations: "@defaultonly()"
+  }
+  direct_resource_ids: 302038636
+  size: 1024
+}
+tables {
+  preamble {
+    id: 33615204
+    name: "forwarding.multicast_v4"
+    alias: "multicast_v4"
+  }
+  match_fields {
+    id: 1
+    name: "hdr.vlan_tag.vlan_id"
+    bitwidth: 12
+    match_type: EXACT
+  }
+  match_fields {
+    id: 2
+    name: "hdr.ipv4.dst_addr"
+    bitwidth: 32
+    match_type: LPM
+  }
+  action_refs {
+    id: 16829931
+  }
+  action_refs {
+    id: 16800567
+    annotations: "@defaultonly()"
+  }
+  direct_resource_ids: 302009236
+  size: 1024
+}
+tables {
+  preamble {
+    id: 33587782
+    name: "forwarding.acl"
+    alias: "acl"
+  }
+  match_fields {
+    id: 1
+    name: "standard_metadata.ingress_port"
+    bitwidth: 9
+    match_type: TERNARY
+  }
+  match_fields {
+    id: 2
+    name: "fabric_metadata.ip_proto"
+    bitwidth: 8
+    match_type: TERNARY
+  }
+  match_fields {
+    id: 3
+    name: "fabric_metadata.l4_src_port"
+    bitwidth: 16
+    match_type: TERNARY
+  }
+  match_fields {
+    id: 4
+    name: "fabric_metadata.l4_dst_port"
+    bitwidth: 16
+    match_type: TERNARY
+  }
+  match_fields {
+    id: 5
+    name: "fabric_metadata.original_ether_type"
+    bitwidth: 16
+    match_type: TERNARY
+  }
+  match_fields {
+    id: 6
+    name: "hdr.ethernet.dst_addr"
+    bitwidth: 48
+    match_type: TERNARY
+  }
+  match_fields {
+    id: 7
+    name: "hdr.ethernet.src_addr"
+    bitwidth: 48
+    match_type: TERNARY
+  }
+  match_fields {
+    id: 8
+    name: "hdr.vlan_tag.vlan_id"
+    bitwidth: 12
+    match_type: TERNARY
+  }
+  match_fields {
+    id: 9
+    name: "hdr.ipv4.src_addr"
+    bitwidth: 32
+    match_type: TERNARY
+  }
+  match_fields {
+    id: 10
+    name: "hdr.ipv4.dst_addr"
+    bitwidth: 32
+    match_type: TERNARY
+  }
+  match_fields {
+    id: 11
+    name: "hdr.icmp.icmp_type"
+    bitwidth: 8
+    match_type: TERNARY
+  }
+  match_fields {
+    id: 12
+    name: "hdr.icmp.icmp_code"
+    bitwidth: 8
+    match_type: TERNARY
+  }
+  action_refs {
+    id: 16829931
+  }
+  action_refs {
+    id: 16805452
+  }
+  action_refs {
+    id: 16815978
+  }
+  action_refs {
+    id: 16819938
+  }
+  const_default_action_id: 16819938
+  direct_resource_ids: 302000008
+  size: 256
+}
+tables {
+  preamble {
+    id: 33615740
+    name: "next.simple"
+    alias: "simple"
+  }
+  match_fields {
+    id: 1
+    name: "fabric_metadata.next_id"
+    bitwidth: 32
+    match_type: EXACT
+  }
+  action_refs {
+    id: 16818315
+  }
+  action_refs {
+    id: 16837690
+  }
+  action_refs {
+    id: 16804266
+  }
+  action_refs {
+    id: 16841192
+  }
+  action_refs {
+    id: 16800567
+    annotations: "@defaultonly()"
+  }
+  direct_resource_ids: 301991179
+  size: 1024
+}
+tables {
+  preamble {
+    id: 33569488
+    name: "next.hashed"
+    alias: "hashed"
+  }
+  match_fields {
+    id: 1
+    name: "fabric_metadata.next_id"
+    bitwidth: 32
+    match_type: EXACT
+  }
+  action_refs {
+    id: 16804266
+  }
+  action_refs {
+    id: 16841192
+  }
+  action_refs {
+    id: 16788519
+  }
+  action_refs {
+    id: 16800567
+    annotations: "@defaultonly()"
+  }
+  implementation_id: 285225078
+  direct_resource_ids: 301993193
+  size: 1024
+}
+tables {
+  preamble {
+    id: 33608545
+    name: "next.broadcast"
+    alias: "broadcast"
+  }
+  match_fields {
+    id: 1
+    name: "fabric_metadata.next_id"
+    bitwidth: 32
+    match_type: EXACT
+  }
+  action_refs {
+    id: 16778974
+  }
+  action_refs {
+    id: 16800567
+    annotations: "@defaultonly()"
+  }
+  direct_resource_ids: 301995093
+  size: 1024
+}
+actions {
+  preamble {
+    id: 16819938
+    name: "nop"
+    alias: "nop"
+  }
+}
+actions {
+  preamble {
+    id: 16800567
+    name: "NoAction"
+    alias: "NoAction"
+  }
+}
+actions {
+  preamble {
+    id: 16826365
+    name: "filtering.drop"
+    alias: "filtering.drop"
+  }
+}
+actions {
+  preamble {
+    id: 16782367
+    name: "filtering.set_vlan"
+    alias: "set_vlan"
+  }
+  params {
+    id: 1
+    name: "new_vlan_id"
+    bitwidth: 12
+  }
+}
+actions {
+  preamble {
+    id: 16794505
+    name: "filtering.push_internal_vlan"
+    alias: "push_internal_vlan"
+  }
+  params {
+    id: 1
+    name: "new_vlan_id"
+    bitwidth: 12
+  }
+}
+actions {
+  preamble {
+    id: 16838162
+    name: "filtering.set_forwarding_type"
+    alias: "set_forwarding_type"
+  }
+  params {
+    id: 1
+    name: "fwd_type"
+    bitwidth: 3
+  }
+}
+actions {
+  preamble {
+    id: 16815978
+    name: "forwarding.drop"
+    alias: "forwarding.drop"
+  }
+}
+actions {
+  preamble {
+    id: 16829931
+    name: "forwarding.set_next_id"
+    alias: "set_next_id"
+  }
+  params {
+    id: 1
+    name: "next_id"
+    bitwidth: 32
+  }
+}
+actions {
+  preamble {
+    id: 16842717
+    name: "forwarding.pop_mpls_and_next"
+    alias: "pop_mpls_and_next"
+  }
+  params {
+    id: 1
+    name: "next_id"
+    bitwidth: 32
+  }
+}
+actions {
+  preamble {
+    id: 16805452
+    name: "forwarding.duplicate_to_controller"
+    alias: "duplicate_to_controller"
+  }
+}
+actions {
+  preamble {
+    id: 16818315
+    name: "next.output"
+    alias: "output"
+  }
+  params {
+    id: 1
+    name: "port_num"
+    bitwidth: 9
+  }
+}
+actions {
+  preamble {
+    id: 16837690
+    name: "next.set_vlan_output"
+    alias: "set_vlan_output"
+  }
+  params {
+    id: 1
+    name: "new_vlan_id"
+    bitwidth: 12
+  }
+  params {
+    id: 2
+    name: "port_num"
+    bitwidth: 9
+  }
+}
+actions {
+  preamble {
+    id: 16804266
+    name: "next.l3_routing"
+    alias: "l3_routing"
+  }
+  params {
+    id: 1
+    name: "port_num"
+    bitwidth: 9
+  }
+  params {
+    id: 2
+    name: "smac"
+    bitwidth: 48
+  }
+  params {
+    id: 3
+    name: "dmac"
+    bitwidth: 48
+  }
+}
+actions {
+  preamble {
+    id: 16778974
+    name: "next.set_mcast_group"
+    alias: "set_mcast_group"
+  }
+  params {
+    id: 1
+    name: "gid"
+    bitwidth: 16
+  }
+  params {
+    id: 2
+    name: "smac"
+    bitwidth: 48
+  }
+}
+actions {
+  preamble {
+    id: 16841192
+    name: "next.mpls_routing_v4"
+    alias: "mpls_routing_v4"
+  }
+  params {
+    id: 1
+    name: "port_num"
+    bitwidth: 9
+  }
+  params {
+    id: 2
+    name: "smac"
+    bitwidth: 48
+  }
+  params {
+    id: 3
+    name: "dmac"
+    bitwidth: 48
+  }
+  params {
+    id: 4
+    name: "label"
+    bitwidth: 20
+  }
+}
+actions {
+  preamble {
+    id: 16788519
+    name: "next.mpls_routing_v6"
+    alias: "mpls_routing_v6"
+  }
+  params {
+    id: 1
+    name: "port_num"
+    bitwidth: 9
+  }
+  params {
+    id: 2
+    name: "smac"
+    bitwidth: 48
+  }
+  params {
+    id: 3
+    name: "dmac"
+    bitwidth: 48
+  }
+  params {
+    id: 4
+    name: "label"
+    bitwidth: 20
+  }
+}
+action_profiles {
+  preamble {
+    id: 285225078
+    name: "next.ecmp_selector"
+    alias: "ecmp_selector"
+  }
+  table_ids: 33569488
+  with_selector: true
+  size: 64
+}
+counters {
+  preamble {
+    id: 302025528
+    name: "port_counters_control.egress_port_counter"
+    alias: "egress_port_counter"
+  }
+  spec {
+    unit: PACKETS
+  }
+  size: 511
+}
+counters {
+  preamble {
+    id: 301999025
+    name: "port_counters_control.ingress_port_counter"
+    alias: "ingress_port_counter"
+  }
+  spec {
+    unit: PACKETS
+  }
+  size: 511
+}
+direct_counters {
+  preamble {
+    id: 302015144
+    name: "filtering.ingress_port_vlan_counter"
+    alias: "ingress_port_vlan_counter"
+  }
+  spec {
+    unit: BOTH
+  }
+  direct_table_id: 33578399
+}
+direct_counters {
+  preamble {
+    id: 302033694
+    name: "filtering.fwd_classifier_counter"
+    alias: "fwd_classifier_counter"
+  }
+  spec {
+    unit: BOTH
+  }
+  direct_table_id: 33619540
+}
+direct_counters {
+  preamble {
+    id: 302047449
+    name: "forwarding.bridging_counter"
+    alias: "bridging_counter"
+  }
+  spec {
+    unit: BOTH
+  }
+  direct_table_id: 33569146
+}
+direct_counters {
+  preamble {
+    id: 302001577
+    name: "forwarding.mpls_counter"
+    alias: "mpls_counter"
+  }
+  spec {
+    unit: BOTH
+  }
+  direct_table_id: 33565386
+}
+direct_counters {
+  preamble {
+    id: 302038636
+    name: "forwarding.unicast_v4_counter"
+    alias: "unicast_v4_counter"
+  }
+  spec {
+    unit: BOTH
+  }
+  direct_table_id: 33589684
+}
+direct_counters {
+  preamble {
+    id: 302009236
+    name: "forwarding.multicast_v4_counter"
+    alias: "multicast_v4_counter"
+  }
+  spec {
+    unit: BOTH
+  }
+  direct_table_id: 33615204
+}
+direct_counters {
+  preamble {
+    id: 302000008
+    name: "forwarding.acl_counter"
+    alias: "acl_counter"
+  }
+  spec {
+    unit: BOTH
+  }
+  direct_table_id: 33587782
+}
+direct_counters {
+  preamble {
+    id: 301991179
+    name: "next.simple_counter"
+    alias: "simple_counter"
+  }
+  spec {
+    unit: BOTH
+  }
+  direct_table_id: 33615740
+}
+direct_counters {
+  preamble {
+    id: 301993193
+    name: "next.hashed_counter"
+    alias: "hashed_counter"
+  }
+  spec {
+    unit: BOTH
+  }
+  direct_table_id: 33569488
+}
+direct_counters {
+  preamble {
+    id: 301995093
+    name: "next.broadcast_counter"
+    alias: "broadcast_counter"
+  }
+  spec {
+    unit: BOTH
+  }
+  direct_table_id: 33608545
+}
+controller_packet_metadata {
+  preamble {
+    id: 2868941301
+    name: "packet_in"
+    annotations: "@controller_header(\"packet_in\")"
+  }
+  metadata {
+    id: 1
+    name: "ingress_port"
+    bitwidth: 9
+  }
+  metadata {
+    id: 2
+    name: "_pad"
+    bitwidth: 7
+  }
+}
+controller_packet_metadata {
+  preamble {
+    id: 2868916615
+    name: "packet_out"
+    annotations: "@controller_header(\"packet_out\")"
+  }
+  metadata {
+    id: 1
+    name: "egress_port"
+    bitwidth: 9
+  }
+  metadata {
+    id: 2
+    name: "_pad"
+    bitwidth: 7
+  }
+}
diff --git a/pipelines/fabric-hw/src/main/resources/p4c-out/tofino/fabric/mavericks/tofino.bin b/pipelines/fabric-hw/src/main/resources/p4c-out/tofino/fabric/mavericks/tofino.bin
new file mode 100644
index 0000000..8bff8f4
--- /dev/null
+++ b/pipelines/fabric-hw/src/main/resources/p4c-out/tofino/fabric/mavericks/tofino.bin
Binary files differ
diff --git a/pipelines/fabric-hw/src/main/resources/p4c-out/tofino/fabric/montana/context.json b/pipelines/fabric-hw/src/main/resources/p4c-out/tofino/fabric/montana/context.json
new file mode 100644
index 0000000..51b809f
--- /dev/null
+++ b/pipelines/fabric-hw/src/main/resources/p4c-out/tofino/fabric/montana/context.json
@@ -0,0 +1,41703 @@
+{
+  "build_date": "01/31/18 02:07:41",
+  "compiler_version": "6.0.0-alpha.3",
+  "program_name": "main",
+  "learn_quanta": [],
+  "dynamic_hash_calculations": [],
+  "parser": { "ingress": [], "egress": [] },
+  "phv_allocation": [
+    {
+      "ingress": [
+        {
+          "phv_number": 0,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 1,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 2,
+          "records": [
+            {
+              "position_offset": 80,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 3,
+          "records": [
+            {
+              "position_offset": 68,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 4,
+          "records": [
+            {
+              "position_offset": 33,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 64,
+          "records": [
+            {
+              "position_offset": 45,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 65,
+          "records": [
+            {
+              "position_offset": 44,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 66,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 92,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 89,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 67,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "$bridged_metadata_indicator",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 68,
+          "records": [
+            {
+              "position_offset": 86,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 69,
+          "records": [
+            {
+              "position_offset": 93,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 70,
+          "records": [
+            {
+              "position_offset": 28,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 71,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "$always_deparse",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 40,
+              "field_name": "hasExited_0",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 2,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 41,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 66,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 88,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 94,
+                  "header_name": "packet_out",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 72,
+          "records": [
+            {
+              "position_offset": 39,
+              "field_name": "fabric_metadata.pop_vlan_at_egress",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 97,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 124,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 133,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 128,
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "records": [
+            {
+              "position_offset": 64,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "packet_out.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 60,
+              "field_name": "ig_intr_md_for_tm.drop_ctl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 2,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "records": [
+            {
+              "position_offset": 138,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 134,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 140,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 132,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 133,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 134,
+          "records": [
+            {
+              "position_offset": 31,
+              "field_name": "fabric_metadata.l4_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 135,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 136,
+          "records": [
+            {
+              "position_offset": 136,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 137,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 138,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 139,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.l4_dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 140,
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.original_ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 260,
+          "records": [
+            {
+              "position_offset": 114,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 261,
+          "records": [
+            {
+              "position_offset": 98,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 292,
+          "records": [
+            {
+              "position_offset": 3,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 78,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 293,
+          "records": [
+            {
+              "position_offset": 8,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 67,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 326,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 104,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 42,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 327,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 118,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 329,
+          "records": [
+            {
+              "position_offset": 84,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 330,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "records": [
+            {
+              "position_offset": 108,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 338,
+          "records": [
+            {
+              "position_offset": 122,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 339,
+          "records": [
+            {
+              "position_offset": 102,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 340,
+          "records": [
+            {
+              "position_offset": 120,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "egress": [
+        {
+          "phv_number": 80,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 0,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 26,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 45,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 67,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 73,
+                  "header_name": "packet_in",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 81,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 78,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 105,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 114,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 144,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "eg_intr_md.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 145,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "packet_in.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "packet_in._pad",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 6,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 146,
+          "records": [
+            {
+              "position_offset": 43,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 256,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 257,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "records": [
+            {
+              "position_offset": 59,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "records": [
+            {
+              "position_offset": 47,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 264,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 265,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 288,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 66,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 57,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 289,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 30,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 290,
+          "records": [
+            {
+              "position_offset": 46,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 291,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 296,
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 71,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 68,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "records": [
+            {
+              "position_offset": 65,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 299,
+          "records": [
+            {
+              "position_offset": 72,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 320,
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 115,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 121,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 321,
+          "records": [
+            {
+              "position_offset": 2,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 99,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 322,
+          "records": [
+            {
+              "position_offset": 7,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 323,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 93,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 91,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 85,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 31,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 324,
+          "records": [
+            {
+              "position_offset": 51,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 325,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "records": [
+            {
+              "position_offset": 117,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 335,
+          "records": [
+            {
+              "position_offset": 63,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "records": [
+            {
+              "position_offset": 55,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 33,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 344,
+          "records": [
+            {
+              "position_offset": 103,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 345,
+          "records": [
+            {
+              "position_offset": 83,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 346,
+          "records": [
+            {
+              "position_offset": 101,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "stage_number": 0
+    },
+    {
+      "ingress": [
+        {
+          "phv_number": 0,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 1,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 2,
+          "records": [
+            {
+              "position_offset": 80,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 3,
+          "records": [
+            {
+              "position_offset": 68,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 4,
+          "records": [
+            {
+              "position_offset": 33,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 64,
+          "records": [
+            {
+              "position_offset": 45,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 65,
+          "records": [
+            {
+              "position_offset": 44,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 66,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 92,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 89,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 67,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "$bridged_metadata_indicator",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 68,
+          "records": [
+            {
+              "position_offset": 86,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 69,
+          "records": [
+            {
+              "position_offset": 93,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 70,
+          "records": [
+            {
+              "position_offset": 28,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 71,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "$always_deparse",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 40,
+              "field_name": "hasExited_0",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 2,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 41,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 66,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 88,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 94,
+                  "header_name": "packet_out",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 72,
+          "records": [
+            {
+              "position_offset": 39,
+              "field_name": "fabric_metadata.pop_vlan_at_egress",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 97,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 124,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 133,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 128,
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "records": [
+            {
+              "position_offset": 64,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "packet_out.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 60,
+              "field_name": "ig_intr_md_for_tm.drop_ctl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 2,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "records": [
+            {
+              "position_offset": 138,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 134,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 140,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 132,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 133,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 134,
+          "records": [
+            {
+              "position_offset": 31,
+              "field_name": "fabric_metadata.l4_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 135,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 136,
+          "records": [
+            {
+              "position_offset": 136,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 137,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 138,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 139,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.l4_dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 140,
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.original_ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 260,
+          "records": [
+            {
+              "position_offset": 114,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 261,
+          "records": [
+            {
+              "position_offset": 98,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 292,
+          "records": [
+            {
+              "position_offset": 3,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 78,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 293,
+          "records": [
+            {
+              "position_offset": 8,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 67,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 326,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 104,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 42,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 327,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 118,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 329,
+          "records": [
+            {
+              "position_offset": 84,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 330,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "records": [
+            {
+              "position_offset": 108,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 338,
+          "records": [
+            {
+              "position_offset": 122,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 339,
+          "records": [
+            {
+              "position_offset": 102,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 340,
+          "records": [
+            {
+              "position_offset": 120,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "egress": [
+        {
+          "phv_number": 80,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 0,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 26,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 45,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 67,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 73,
+                  "header_name": "packet_in",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 81,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 78,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 105,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 114,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 144,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "eg_intr_md.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 145,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "packet_in.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "packet_in._pad",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 6,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 146,
+          "records": [
+            {
+              "position_offset": 43,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 256,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 257,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "records": [
+            {
+              "position_offset": 59,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "records": [
+            {
+              "position_offset": 47,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 264,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 265,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 288,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 66,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 57,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 289,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 30,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 290,
+          "records": [
+            {
+              "position_offset": 46,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 291,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 296,
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 71,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 68,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "records": [
+            {
+              "position_offset": 65,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 299,
+          "records": [
+            {
+              "position_offset": 72,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 320,
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 115,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 121,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 321,
+          "records": [
+            {
+              "position_offset": 2,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 99,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 322,
+          "records": [
+            {
+              "position_offset": 7,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 323,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 93,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 91,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 85,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 31,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 324,
+          "records": [
+            {
+              "position_offset": 51,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 325,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "records": [
+            {
+              "position_offset": 117,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 335,
+          "records": [
+            {
+              "position_offset": 63,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "records": [
+            {
+              "position_offset": 55,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 33,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 344,
+          "records": [
+            {
+              "position_offset": 103,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 345,
+          "records": [
+            {
+              "position_offset": 83,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 346,
+          "records": [
+            {
+              "position_offset": 101,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "stage_number": 1
+    },
+    {
+      "ingress": [
+        {
+          "phv_number": 0,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 1,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 2,
+          "records": [
+            {
+              "position_offset": 80,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 3,
+          "records": [
+            {
+              "position_offset": 68,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 4,
+          "records": [
+            {
+              "position_offset": 33,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 64,
+          "records": [
+            {
+              "position_offset": 45,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 65,
+          "records": [
+            {
+              "position_offset": 44,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 66,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 92,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 89,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 67,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "$bridged_metadata_indicator",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 68,
+          "records": [
+            {
+              "position_offset": 86,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 69,
+          "records": [
+            {
+              "position_offset": 93,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 70,
+          "records": [
+            {
+              "position_offset": 28,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 71,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "$always_deparse",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 40,
+              "field_name": "hasExited_0",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 2,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 41,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 66,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 88,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 94,
+                  "header_name": "packet_out",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 72,
+          "records": [
+            {
+              "position_offset": 39,
+              "field_name": "fabric_metadata.pop_vlan_at_egress",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 97,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 124,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 133,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 128,
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "records": [
+            {
+              "position_offset": 64,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "packet_out.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 60,
+              "field_name": "ig_intr_md_for_tm.drop_ctl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 2,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "records": [
+            {
+              "position_offset": 138,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 134,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 140,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 132,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 133,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 134,
+          "records": [
+            {
+              "position_offset": 31,
+              "field_name": "fabric_metadata.l4_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 135,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 136,
+          "records": [
+            {
+              "position_offset": 136,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 137,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 138,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 139,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.l4_dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 140,
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.original_ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 260,
+          "records": [
+            {
+              "position_offset": 114,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 261,
+          "records": [
+            {
+              "position_offset": 98,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 292,
+          "records": [
+            {
+              "position_offset": 3,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 78,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 293,
+          "records": [
+            {
+              "position_offset": 8,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 67,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 326,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 104,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 42,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 327,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 118,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 329,
+          "records": [
+            {
+              "position_offset": 84,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 330,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "records": [
+            {
+              "position_offset": 108,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 338,
+          "records": [
+            {
+              "position_offset": 122,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 339,
+          "records": [
+            {
+              "position_offset": 102,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 340,
+          "records": [
+            {
+              "position_offset": 120,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "egress": [
+        {
+          "phv_number": 80,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 0,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 26,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 45,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 67,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 73,
+                  "header_name": "packet_in",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 81,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 78,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 105,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 114,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 144,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "eg_intr_md.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 145,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "packet_in.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "packet_in._pad",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 6,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 146,
+          "records": [
+            {
+              "position_offset": 43,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 256,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 257,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "records": [
+            {
+              "position_offset": 59,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "records": [
+            {
+              "position_offset": 47,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 264,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 265,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 288,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 66,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 57,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 289,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 30,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 290,
+          "records": [
+            {
+              "position_offset": 46,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 291,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 296,
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 71,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 68,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "records": [
+            {
+              "position_offset": 65,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 299,
+          "records": [
+            {
+              "position_offset": 72,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 320,
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 115,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 121,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 321,
+          "records": [
+            {
+              "position_offset": 2,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 99,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 322,
+          "records": [
+            {
+              "position_offset": 7,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 323,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 93,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 91,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 85,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 31,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 324,
+          "records": [
+            {
+              "position_offset": 51,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 325,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "records": [
+            {
+              "position_offset": 117,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 335,
+          "records": [
+            {
+              "position_offset": 63,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "records": [
+            {
+              "position_offset": 55,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 33,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 344,
+          "records": [
+            {
+              "position_offset": 103,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 345,
+          "records": [
+            {
+              "position_offset": 83,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 346,
+          "records": [
+            {
+              "position_offset": 101,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "stage_number": 2
+    },
+    {
+      "ingress": [
+        {
+          "phv_number": 0,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 1,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 2,
+          "records": [
+            {
+              "position_offset": 80,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 3,
+          "records": [
+            {
+              "position_offset": 68,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 4,
+          "records": [
+            {
+              "position_offset": 33,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 64,
+          "records": [
+            {
+              "position_offset": 45,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 65,
+          "records": [
+            {
+              "position_offset": 44,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 66,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 92,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 89,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 67,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "$bridged_metadata_indicator",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 68,
+          "records": [
+            {
+              "position_offset": 86,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 69,
+          "records": [
+            {
+              "position_offset": 93,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 70,
+          "records": [
+            {
+              "position_offset": 28,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 71,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "$always_deparse",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 40,
+              "field_name": "hasExited_0",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 2,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 41,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 66,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 88,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 94,
+                  "header_name": "packet_out",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 72,
+          "records": [
+            {
+              "position_offset": 39,
+              "field_name": "fabric_metadata.pop_vlan_at_egress",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 97,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 124,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 133,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 128,
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "records": [
+            {
+              "position_offset": 64,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "packet_out.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 60,
+              "field_name": "ig_intr_md_for_tm.drop_ctl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 2,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "records": [
+            {
+              "position_offset": 138,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 134,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 140,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 132,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 133,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 134,
+          "records": [
+            {
+              "position_offset": 31,
+              "field_name": "fabric_metadata.l4_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 135,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 136,
+          "records": [
+            {
+              "position_offset": 136,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 137,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 138,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 139,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.l4_dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 140,
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.original_ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 260,
+          "records": [
+            {
+              "position_offset": 114,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 261,
+          "records": [
+            {
+              "position_offset": 98,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 292,
+          "records": [
+            {
+              "position_offset": 3,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 78,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 293,
+          "records": [
+            {
+              "position_offset": 8,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 67,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 326,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 104,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 42,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 327,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 118,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 329,
+          "records": [
+            {
+              "position_offset": 84,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 330,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "records": [
+            {
+              "position_offset": 108,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 338,
+          "records": [
+            {
+              "position_offset": 122,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 339,
+          "records": [
+            {
+              "position_offset": 102,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 340,
+          "records": [
+            {
+              "position_offset": 120,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "egress": [
+        {
+          "phv_number": 80,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 0,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 26,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 45,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 67,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 73,
+                  "header_name": "packet_in",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 81,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 78,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 105,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 114,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 144,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "eg_intr_md.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 145,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "packet_in.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "packet_in._pad",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 6,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 146,
+          "records": [
+            {
+              "position_offset": 43,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 256,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 257,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "records": [
+            {
+              "position_offset": 59,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "records": [
+            {
+              "position_offset": 47,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 264,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 265,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 288,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 66,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 57,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 289,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 30,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 290,
+          "records": [
+            {
+              "position_offset": 46,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 291,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 296,
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 71,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 68,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "records": [
+            {
+              "position_offset": 65,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 299,
+          "records": [
+            {
+              "position_offset": 72,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 320,
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 115,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 121,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 321,
+          "records": [
+            {
+              "position_offset": 2,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 99,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 322,
+          "records": [
+            {
+              "position_offset": 7,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 323,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 93,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 91,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 85,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 31,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 324,
+          "records": [
+            {
+              "position_offset": 51,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 325,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "records": [
+            {
+              "position_offset": 117,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 335,
+          "records": [
+            {
+              "position_offset": 63,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "records": [
+            {
+              "position_offset": 55,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 33,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 344,
+          "records": [
+            {
+              "position_offset": 103,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 345,
+          "records": [
+            {
+              "position_offset": 83,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 346,
+          "records": [
+            {
+              "position_offset": 101,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "stage_number": 3
+    },
+    {
+      "ingress": [
+        {
+          "phv_number": 0,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 1,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 2,
+          "records": [
+            {
+              "position_offset": 80,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 3,
+          "records": [
+            {
+              "position_offset": 68,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 4,
+          "records": [
+            {
+              "position_offset": 33,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 64,
+          "records": [
+            {
+              "position_offset": 45,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 65,
+          "records": [
+            {
+              "position_offset": 44,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 66,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 92,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 89,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 67,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "$bridged_metadata_indicator",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 68,
+          "records": [
+            {
+              "position_offset": 86,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 69,
+          "records": [
+            {
+              "position_offset": 93,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 70,
+          "records": [
+            {
+              "position_offset": 28,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 71,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "$always_deparse",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 40,
+              "field_name": "hasExited_0",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 2,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 41,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 66,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 88,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 94,
+                  "header_name": "packet_out",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 72,
+          "records": [
+            {
+              "position_offset": 39,
+              "field_name": "fabric_metadata.pop_vlan_at_egress",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 97,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 124,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 133,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 128,
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "records": [
+            {
+              "position_offset": 64,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "packet_out.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 60,
+              "field_name": "ig_intr_md_for_tm.drop_ctl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 2,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "records": [
+            {
+              "position_offset": 138,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 134,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 140,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 132,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 133,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 134,
+          "records": [
+            {
+              "position_offset": 31,
+              "field_name": "fabric_metadata.l4_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 135,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 136,
+          "records": [
+            {
+              "position_offset": 136,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 137,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 138,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 139,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.l4_dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 140,
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.original_ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 260,
+          "records": [
+            {
+              "position_offset": 114,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 261,
+          "records": [
+            {
+              "position_offset": 98,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 292,
+          "records": [
+            {
+              "position_offset": 3,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 78,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 293,
+          "records": [
+            {
+              "position_offset": 8,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 67,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 326,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 104,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 42,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 327,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 118,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 329,
+          "records": [
+            {
+              "position_offset": 84,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 330,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "records": [
+            {
+              "position_offset": 108,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 338,
+          "records": [
+            {
+              "position_offset": 122,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 339,
+          "records": [
+            {
+              "position_offset": 102,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 340,
+          "records": [
+            {
+              "position_offset": 120,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "egress": [
+        {
+          "phv_number": 80,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 0,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 26,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 45,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 67,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 73,
+                  "header_name": "packet_in",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 81,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 78,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 105,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 114,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 144,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "eg_intr_md.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 145,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "packet_in.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "packet_in._pad",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 6,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 146,
+          "records": [
+            {
+              "position_offset": 43,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 256,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 257,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "records": [
+            {
+              "position_offset": 59,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "records": [
+            {
+              "position_offset": 47,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 264,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 265,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 288,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 66,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 57,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 289,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 30,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 290,
+          "records": [
+            {
+              "position_offset": 46,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 291,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 296,
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 71,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 68,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "records": [
+            {
+              "position_offset": 65,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 299,
+          "records": [
+            {
+              "position_offset": 72,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 320,
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 115,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 121,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 321,
+          "records": [
+            {
+              "position_offset": 2,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 99,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 322,
+          "records": [
+            {
+              "position_offset": 7,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 323,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 93,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 91,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 85,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 31,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 324,
+          "records": [
+            {
+              "position_offset": 51,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 325,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "records": [
+            {
+              "position_offset": 117,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 335,
+          "records": [
+            {
+              "position_offset": 63,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "records": [
+            {
+              "position_offset": 55,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 33,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 344,
+          "records": [
+            {
+              "position_offset": 103,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 345,
+          "records": [
+            {
+              "position_offset": 83,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 346,
+          "records": [
+            {
+              "position_offset": 101,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "stage_number": 4
+    },
+    {
+      "ingress": [
+        {
+          "phv_number": 0,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 1,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 2,
+          "records": [
+            {
+              "position_offset": 80,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 3,
+          "records": [
+            {
+              "position_offset": 68,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 4,
+          "records": [
+            {
+              "position_offset": 33,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 64,
+          "records": [
+            {
+              "position_offset": 45,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 65,
+          "records": [
+            {
+              "position_offset": 44,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 66,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 92,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 89,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 67,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "$bridged_metadata_indicator",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 68,
+          "records": [
+            {
+              "position_offset": 86,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 69,
+          "records": [
+            {
+              "position_offset": 93,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 70,
+          "records": [
+            {
+              "position_offset": 28,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 71,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "$always_deparse",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 40,
+              "field_name": "hasExited_0",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 2,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 41,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 66,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 88,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 94,
+                  "header_name": "packet_out",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 72,
+          "records": [
+            {
+              "position_offset": 39,
+              "field_name": "fabric_metadata.pop_vlan_at_egress",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 97,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 124,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 133,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 128,
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "records": [
+            {
+              "position_offset": 64,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "packet_out.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 60,
+              "field_name": "ig_intr_md_for_tm.drop_ctl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 2,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "records": [
+            {
+              "position_offset": 138,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 134,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 140,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 132,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 133,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 134,
+          "records": [
+            {
+              "position_offset": 31,
+              "field_name": "fabric_metadata.l4_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 135,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 136,
+          "records": [
+            {
+              "position_offset": 136,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 137,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 138,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 139,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.l4_dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 140,
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.original_ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 260,
+          "records": [
+            {
+              "position_offset": 114,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 261,
+          "records": [
+            {
+              "position_offset": 98,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 292,
+          "records": [
+            {
+              "position_offset": 3,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 78,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 293,
+          "records": [
+            {
+              "position_offset": 8,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 67,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 326,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 104,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 42,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 327,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 118,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 329,
+          "records": [
+            {
+              "position_offset": 84,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 330,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "records": [
+            {
+              "position_offset": 108,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 338,
+          "records": [
+            {
+              "position_offset": 122,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 339,
+          "records": [
+            {
+              "position_offset": 102,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 340,
+          "records": [
+            {
+              "position_offset": 120,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "egress": [
+        {
+          "phv_number": 80,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 0,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 26,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 45,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 67,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 73,
+                  "header_name": "packet_in",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 81,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 78,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 105,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 114,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 144,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "eg_intr_md.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 145,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "packet_in.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "packet_in._pad",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 6,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 146,
+          "records": [
+            {
+              "position_offset": 43,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 256,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 257,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "records": [
+            {
+              "position_offset": 59,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "records": [
+            {
+              "position_offset": 47,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 264,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 265,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 288,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 66,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 57,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 289,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 30,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 290,
+          "records": [
+            {
+              "position_offset": 46,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 291,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 296,
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 71,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 68,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "records": [
+            {
+              "position_offset": 65,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 299,
+          "records": [
+            {
+              "position_offset": 72,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 320,
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 115,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 121,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 321,
+          "records": [
+            {
+              "position_offset": 2,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 99,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 322,
+          "records": [
+            {
+              "position_offset": 7,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 323,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 93,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 91,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 85,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 31,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 324,
+          "records": [
+            {
+              "position_offset": 51,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 325,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "records": [
+            {
+              "position_offset": 117,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 335,
+          "records": [
+            {
+              "position_offset": 63,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "records": [
+            {
+              "position_offset": 55,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 33,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 344,
+          "records": [
+            {
+              "position_offset": 103,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 345,
+          "records": [
+            {
+              "position_offset": 83,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 346,
+          "records": [
+            {
+              "position_offset": 101,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "stage_number": 5
+    },
+    {
+      "ingress": [
+        {
+          "phv_number": 0,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 1,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 2,
+          "records": [
+            {
+              "position_offset": 80,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 3,
+          "records": [
+            {
+              "position_offset": 68,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 4,
+          "records": [
+            {
+              "position_offset": 33,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 64,
+          "records": [
+            {
+              "position_offset": 45,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 65,
+          "records": [
+            {
+              "position_offset": 44,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 66,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 92,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 89,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 67,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "$bridged_metadata_indicator",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 68,
+          "records": [
+            {
+              "position_offset": 86,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 69,
+          "records": [
+            {
+              "position_offset": 93,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 70,
+          "records": [
+            {
+              "position_offset": 28,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 71,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "$always_deparse",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 40,
+              "field_name": "hasExited_0",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 2,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 41,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 66,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 88,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 94,
+                  "header_name": "packet_out",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 72,
+          "records": [
+            {
+              "position_offset": 39,
+              "field_name": "fabric_metadata.pop_vlan_at_egress",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 97,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 124,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 133,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 128,
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "records": [
+            {
+              "position_offset": 64,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "packet_out.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 60,
+              "field_name": "ig_intr_md_for_tm.drop_ctl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 2,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "records": [
+            {
+              "position_offset": 138,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 134,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 140,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 132,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 133,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 134,
+          "records": [
+            {
+              "position_offset": 31,
+              "field_name": "fabric_metadata.l4_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 135,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 136,
+          "records": [
+            {
+              "position_offset": 136,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 137,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 138,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 139,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.l4_dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 140,
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.original_ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 260,
+          "records": [
+            {
+              "position_offset": 114,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 261,
+          "records": [
+            {
+              "position_offset": 98,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 292,
+          "records": [
+            {
+              "position_offset": 3,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 78,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 293,
+          "records": [
+            {
+              "position_offset": 8,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 67,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 326,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 104,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 42,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 327,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 118,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 329,
+          "records": [
+            {
+              "position_offset": 84,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 330,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "records": [
+            {
+              "position_offset": 108,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 338,
+          "records": [
+            {
+              "position_offset": 122,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 339,
+          "records": [
+            {
+              "position_offset": 102,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 340,
+          "records": [
+            {
+              "position_offset": 120,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "egress": [
+        {
+          "phv_number": 80,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 0,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 26,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 45,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 67,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 73,
+                  "header_name": "packet_in",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 81,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 78,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 105,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 114,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 144,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "eg_intr_md.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 145,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "packet_in.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "packet_in._pad",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 6,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 146,
+          "records": [
+            {
+              "position_offset": 43,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 256,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 257,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "records": [
+            {
+              "position_offset": 59,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "records": [
+            {
+              "position_offset": 47,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 264,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 265,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 288,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 66,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 57,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 289,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 30,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 290,
+          "records": [
+            {
+              "position_offset": 46,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 291,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 296,
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 71,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 68,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "records": [
+            {
+              "position_offset": 65,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 299,
+          "records": [
+            {
+              "position_offset": 72,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 320,
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 115,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 121,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 321,
+          "records": [
+            {
+              "position_offset": 2,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 99,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 322,
+          "records": [
+            {
+              "position_offset": 7,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 323,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 93,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 91,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 85,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 31,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 324,
+          "records": [
+            {
+              "position_offset": 51,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 325,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "records": [
+            {
+              "position_offset": 117,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 335,
+          "records": [
+            {
+              "position_offset": 63,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "records": [
+            {
+              "position_offset": 55,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 33,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 344,
+          "records": [
+            {
+              "position_offset": 103,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 345,
+          "records": [
+            {
+              "position_offset": 83,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 346,
+          "records": [
+            {
+              "position_offset": 101,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "stage_number": 6
+    },
+    {
+      "ingress": [
+        {
+          "phv_number": 0,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 1,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 2,
+          "records": [
+            {
+              "position_offset": 80,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 3,
+          "records": [
+            {
+              "position_offset": 68,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 4,
+          "records": [
+            {
+              "position_offset": 33,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 64,
+          "records": [
+            {
+              "position_offset": 45,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 65,
+          "records": [
+            {
+              "position_offset": 44,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 66,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 92,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 89,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 67,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "$bridged_metadata_indicator",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 68,
+          "records": [
+            {
+              "position_offset": 86,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 69,
+          "records": [
+            {
+              "position_offset": 93,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 70,
+          "records": [
+            {
+              "position_offset": 28,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 71,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "$always_deparse",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 40,
+              "field_name": "hasExited_0",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 2,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 41,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 66,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 88,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 94,
+                  "header_name": "packet_out",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 72,
+          "records": [
+            {
+              "position_offset": 39,
+              "field_name": "fabric_metadata.pop_vlan_at_egress",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 97,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 124,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 133,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 128,
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "records": [
+            {
+              "position_offset": 64,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "packet_out.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 60,
+              "field_name": "ig_intr_md_for_tm.drop_ctl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 2,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "records": [
+            {
+              "position_offset": 138,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 134,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 140,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 132,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 133,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 134,
+          "records": [
+            {
+              "position_offset": 31,
+              "field_name": "fabric_metadata.l4_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 135,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 136,
+          "records": [
+            {
+              "position_offset": 136,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 137,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 138,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 139,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.l4_dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 140,
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.original_ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 260,
+          "records": [
+            {
+              "position_offset": 114,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 261,
+          "records": [
+            {
+              "position_offset": 98,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 292,
+          "records": [
+            {
+              "position_offset": 3,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 78,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 293,
+          "records": [
+            {
+              "position_offset": 8,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 67,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 326,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 104,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 42,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 327,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 118,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 329,
+          "records": [
+            {
+              "position_offset": 84,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 330,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "records": [
+            {
+              "position_offset": 108,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 338,
+          "records": [
+            {
+              "position_offset": 122,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 339,
+          "records": [
+            {
+              "position_offset": 102,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 340,
+          "records": [
+            {
+              "position_offset": 120,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "egress": [
+        {
+          "phv_number": 80,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 0,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 26,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 45,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 67,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 73,
+                  "header_name": "packet_in",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 81,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 78,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 105,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 114,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 144,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "eg_intr_md.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 145,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "packet_in.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "packet_in._pad",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 6,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 146,
+          "records": [
+            {
+              "position_offset": 43,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 256,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 257,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "records": [
+            {
+              "position_offset": 59,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "records": [
+            {
+              "position_offset": 47,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 264,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 265,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 288,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 66,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 57,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 289,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 30,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 290,
+          "records": [
+            {
+              "position_offset": 46,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 291,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 296,
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 71,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 68,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "records": [
+            {
+              "position_offset": 65,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 299,
+          "records": [
+            {
+              "position_offset": 72,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 320,
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 115,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 121,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 321,
+          "records": [
+            {
+              "position_offset": 2,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 99,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 322,
+          "records": [
+            {
+              "position_offset": 7,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 323,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 93,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 91,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 85,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 31,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 324,
+          "records": [
+            {
+              "position_offset": 51,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 325,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "records": [
+            {
+              "position_offset": 117,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 335,
+          "records": [
+            {
+              "position_offset": 63,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "records": [
+            {
+              "position_offset": 55,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 33,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 344,
+          "records": [
+            {
+              "position_offset": 103,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 345,
+          "records": [
+            {
+              "position_offset": 83,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 346,
+          "records": [
+            {
+              "position_offset": 101,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "stage_number": 7
+    },
+    {
+      "ingress": [
+        {
+          "phv_number": 0,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 1,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 2,
+          "records": [
+            {
+              "position_offset": 80,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 3,
+          "records": [
+            {
+              "position_offset": 68,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 4,
+          "records": [
+            {
+              "position_offset": 33,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 64,
+          "records": [
+            {
+              "position_offset": 45,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 65,
+          "records": [
+            {
+              "position_offset": 44,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 66,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 92,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 89,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 67,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "$bridged_metadata_indicator",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 68,
+          "records": [
+            {
+              "position_offset": 86,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 69,
+          "records": [
+            {
+              "position_offset": 93,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 70,
+          "records": [
+            {
+              "position_offset": 28,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 71,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "$always_deparse",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 40,
+              "field_name": "hasExited_0",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 2,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 41,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 66,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 88,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 94,
+                  "header_name": "packet_out",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 72,
+          "records": [
+            {
+              "position_offset": 39,
+              "field_name": "fabric_metadata.pop_vlan_at_egress",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 97,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 124,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 133,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 128,
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "records": [
+            {
+              "position_offset": 64,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "packet_out.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 60,
+              "field_name": "ig_intr_md_for_tm.drop_ctl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 2,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "records": [
+            {
+              "position_offset": 138,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 134,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 140,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 132,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 133,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 134,
+          "records": [
+            {
+              "position_offset": 31,
+              "field_name": "fabric_metadata.l4_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 135,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 136,
+          "records": [
+            {
+              "position_offset": 136,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 137,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 138,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 139,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.l4_dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 140,
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.original_ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 260,
+          "records": [
+            {
+              "position_offset": 114,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 261,
+          "records": [
+            {
+              "position_offset": 98,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 292,
+          "records": [
+            {
+              "position_offset": 3,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 78,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 293,
+          "records": [
+            {
+              "position_offset": 8,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 67,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 326,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 104,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 42,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 327,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 118,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 329,
+          "records": [
+            {
+              "position_offset": 84,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 330,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "records": [
+            {
+              "position_offset": 108,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 338,
+          "records": [
+            {
+              "position_offset": 122,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 339,
+          "records": [
+            {
+              "position_offset": 102,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 340,
+          "records": [
+            {
+              "position_offset": 120,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "egress": [
+        {
+          "phv_number": 80,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 0,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 26,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 45,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 67,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 73,
+                  "header_name": "packet_in",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 81,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 78,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 105,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 114,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 144,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "eg_intr_md.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 145,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "packet_in.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "packet_in._pad",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 6,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 146,
+          "records": [
+            {
+              "position_offset": 43,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 256,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 257,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "records": [
+            {
+              "position_offset": 59,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "records": [
+            {
+              "position_offset": 47,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 264,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 265,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 288,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 66,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 57,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 289,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 30,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 290,
+          "records": [
+            {
+              "position_offset": 46,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 291,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 296,
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 71,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 68,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "records": [
+            {
+              "position_offset": 65,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 299,
+          "records": [
+            {
+              "position_offset": 72,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 320,
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 115,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 121,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 321,
+          "records": [
+            {
+              "position_offset": 2,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 99,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 322,
+          "records": [
+            {
+              "position_offset": 7,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 323,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 93,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 91,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 85,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 31,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 324,
+          "records": [
+            {
+              "position_offset": 51,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 325,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "records": [
+            {
+              "position_offset": 117,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 335,
+          "records": [
+            {
+              "position_offset": 63,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "records": [
+            {
+              "position_offset": 55,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 33,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 344,
+          "records": [
+            {
+              "position_offset": 103,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 345,
+          "records": [
+            {
+              "position_offset": 83,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 346,
+          "records": [
+            {
+              "position_offset": 101,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "stage_number": 8
+    },
+    {
+      "ingress": [
+        {
+          "phv_number": 0,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 1,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 2,
+          "records": [
+            {
+              "position_offset": 80,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 3,
+          "records": [
+            {
+              "position_offset": 68,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 4,
+          "records": [
+            {
+              "position_offset": 33,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 64,
+          "records": [
+            {
+              "position_offset": 45,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 65,
+          "records": [
+            {
+              "position_offset": 44,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 66,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 92,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 89,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 67,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "$bridged_metadata_indicator",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 68,
+          "records": [
+            {
+              "position_offset": 86,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 69,
+          "records": [
+            {
+              "position_offset": 93,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 70,
+          "records": [
+            {
+              "position_offset": 28,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 71,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "$always_deparse",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 40,
+              "field_name": "hasExited_0",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 2,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 41,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 66,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 88,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 94,
+                  "header_name": "packet_out",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 72,
+          "records": [
+            {
+              "position_offset": 39,
+              "field_name": "fabric_metadata.pop_vlan_at_egress",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 97,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 124,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 133,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 128,
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "records": [
+            {
+              "position_offset": 64,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "packet_out.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 60,
+              "field_name": "ig_intr_md_for_tm.drop_ctl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 2,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "records": [
+            {
+              "position_offset": 138,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 134,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 140,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 132,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 133,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 134,
+          "records": [
+            {
+              "position_offset": 31,
+              "field_name": "fabric_metadata.l4_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 135,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 136,
+          "records": [
+            {
+              "position_offset": 136,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 137,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 138,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 139,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.l4_dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 140,
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.original_ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 260,
+          "records": [
+            {
+              "position_offset": 114,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 261,
+          "records": [
+            {
+              "position_offset": 98,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 292,
+          "records": [
+            {
+              "position_offset": 3,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 78,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 293,
+          "records": [
+            {
+              "position_offset": 8,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 67,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 326,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 104,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 42,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 327,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 118,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 329,
+          "records": [
+            {
+              "position_offset": 84,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 330,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "records": [
+            {
+              "position_offset": 108,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 338,
+          "records": [
+            {
+              "position_offset": 122,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 339,
+          "records": [
+            {
+              "position_offset": 102,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 340,
+          "records": [
+            {
+              "position_offset": 120,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "egress": [
+        {
+          "phv_number": 80,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 0,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 26,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 45,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 67,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 73,
+                  "header_name": "packet_in",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 81,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 78,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 105,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 114,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 144,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "eg_intr_md.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 145,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "packet_in.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "packet_in._pad",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 6,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 146,
+          "records": [
+            {
+              "position_offset": 43,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 256,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 257,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "records": [
+            {
+              "position_offset": 59,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "records": [
+            {
+              "position_offset": 47,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 264,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 265,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 288,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 66,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 57,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 289,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 30,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 290,
+          "records": [
+            {
+              "position_offset": 46,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 291,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 296,
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 71,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 68,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "records": [
+            {
+              "position_offset": 65,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 299,
+          "records": [
+            {
+              "position_offset": 72,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 320,
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 115,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 121,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 321,
+          "records": [
+            {
+              "position_offset": 2,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 99,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 322,
+          "records": [
+            {
+              "position_offset": 7,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 323,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 93,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 91,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 85,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 31,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 324,
+          "records": [
+            {
+              "position_offset": 51,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 325,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "records": [
+            {
+              "position_offset": 117,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 335,
+          "records": [
+            {
+              "position_offset": 63,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "records": [
+            {
+              "position_offset": 55,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 33,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 344,
+          "records": [
+            {
+              "position_offset": 103,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 345,
+          "records": [
+            {
+              "position_offset": 83,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 346,
+          "records": [
+            {
+              "position_offset": 101,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "stage_number": 9
+    },
+    {
+      "ingress": [
+        {
+          "phv_number": 0,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 1,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 2,
+          "records": [
+            {
+              "position_offset": 80,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 3,
+          "records": [
+            {
+              "position_offset": 68,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 4,
+          "records": [
+            {
+              "position_offset": 33,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 64,
+          "records": [
+            {
+              "position_offset": 45,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 65,
+          "records": [
+            {
+              "position_offset": 44,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 66,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 92,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 89,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 67,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "$bridged_metadata_indicator",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 68,
+          "records": [
+            {
+              "position_offset": 86,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 69,
+          "records": [
+            {
+              "position_offset": 93,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 70,
+          "records": [
+            {
+              "position_offset": 28,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 71,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "$always_deparse",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 40,
+              "field_name": "hasExited_0",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 2,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 41,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 66,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 88,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 94,
+                  "header_name": "packet_out",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 72,
+          "records": [
+            {
+              "position_offset": 39,
+              "field_name": "fabric_metadata.pop_vlan_at_egress",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 97,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 124,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 133,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 128,
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "records": [
+            {
+              "position_offset": 64,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "packet_out.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 60,
+              "field_name": "ig_intr_md_for_tm.drop_ctl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 2,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "records": [
+            {
+              "position_offset": 138,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 134,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 140,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 132,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 133,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 134,
+          "records": [
+            {
+              "position_offset": 31,
+              "field_name": "fabric_metadata.l4_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 135,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 136,
+          "records": [
+            {
+              "position_offset": 136,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 137,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 138,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 139,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.l4_dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 140,
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.original_ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 260,
+          "records": [
+            {
+              "position_offset": 114,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 261,
+          "records": [
+            {
+              "position_offset": 98,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 292,
+          "records": [
+            {
+              "position_offset": 3,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 78,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 293,
+          "records": [
+            {
+              "position_offset": 8,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 67,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 326,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 104,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 42,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 327,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 118,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 329,
+          "records": [
+            {
+              "position_offset": 84,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 330,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "records": [
+            {
+              "position_offset": 108,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 338,
+          "records": [
+            {
+              "position_offset": 122,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 339,
+          "records": [
+            {
+              "position_offset": 102,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 340,
+          "records": [
+            {
+              "position_offset": 120,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "egress": [
+        {
+          "phv_number": 80,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 0,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 26,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 45,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 67,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 73,
+                  "header_name": "packet_in",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 81,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 78,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 105,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 114,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 144,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "eg_intr_md.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 145,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "packet_in.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "packet_in._pad",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 6,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 146,
+          "records": [
+            {
+              "position_offset": 43,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 256,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 257,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "records": [
+            {
+              "position_offset": 59,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "records": [
+            {
+              "position_offset": 47,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 264,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 265,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 288,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 66,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 57,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 289,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 30,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 290,
+          "records": [
+            {
+              "position_offset": 46,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 291,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 296,
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 71,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 68,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "records": [
+            {
+              "position_offset": 65,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 299,
+          "records": [
+            {
+              "position_offset": 72,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 320,
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 115,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 121,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 321,
+          "records": [
+            {
+              "position_offset": 2,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 99,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 322,
+          "records": [
+            {
+              "position_offset": 7,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 323,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 93,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 91,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 85,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 31,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 324,
+          "records": [
+            {
+              "position_offset": 51,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 325,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "records": [
+            {
+              "position_offset": 117,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 335,
+          "records": [
+            {
+              "position_offset": 63,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "records": [
+            {
+              "position_offset": 55,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 33,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 344,
+          "records": [
+            {
+              "position_offset": 103,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 345,
+          "records": [
+            {
+              "position_offset": 83,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 346,
+          "records": [
+            {
+              "position_offset": 101,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "stage_number": 10
+    },
+    {
+      "ingress": [
+        {
+          "phv_number": 0,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 1,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 2,
+          "records": [
+            {
+              "position_offset": 80,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 3,
+          "records": [
+            {
+              "position_offset": 68,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 4,
+          "records": [
+            {
+              "position_offset": 33,
+              "field_name": "fabric_metadata.next_id",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 64,
+          "records": [
+            {
+              "position_offset": 45,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 65,
+          "records": [
+            {
+              "position_offset": 44,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 66,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 92,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 89,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 67,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "$bridged_metadata_indicator",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 68,
+          "records": [
+            {
+              "position_offset": 86,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 69,
+          "records": [
+            {
+              "position_offset": 93,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 70,
+          "records": [
+            {
+              "position_offset": 28,
+              "field_name": "fabric_metadata.ip_proto",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 71,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "$always_deparse",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 40,
+              "field_name": "hasExited_0",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 4,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 2,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 41,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 66,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 88,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 94,
+                  "header_name": "packet_out",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 72,
+          "records": [
+            {
+              "position_offset": 39,
+              "field_name": "fabric_metadata.pop_vlan_at_egress",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 97,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 124,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 133,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 128,
+          "records": [
+            {
+              "position_offset": 62,
+              "field_name": "ig_intr_md_for_tm.mcast_grp_a",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 129,
+          "records": [
+            {
+              "position_offset": 64,
+              "field_name": "ig_intr_md_for_tm.ucast_egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 130,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "packet_out.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 26,
+              "field_name": "fabric_metadata.fwd_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 60,
+              "field_name": "ig_intr_md_for_tm.drop_ctl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 2,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 131,
+          "records": [
+            {
+              "position_offset": 138,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 134,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 140,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 132,
+          "records": [
+            {
+              "position_offset": 90,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 133,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 134,
+          "records": [
+            {
+              "position_offset": 31,
+              "field_name": "fabric_metadata.l4_src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 135,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 136,
+          "records": [
+            {
+              "position_offset": 136,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 137,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 138,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 139,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "fabric_metadata.l4_dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 140,
+          "records": [
+            {
+              "position_offset": 37,
+              "field_name": "fabric_metadata.original_ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 260,
+          "records": [
+            {
+              "position_offset": 114,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 261,
+          "records": [
+            {
+              "position_offset": 98,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 50,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 292,
+          "records": [
+            {
+              "position_offset": 3,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 78,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 293,
+          "records": [
+            {
+              "position_offset": 8,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 67,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 294,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 326,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 104,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 131,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 42,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 327,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 118,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 127,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 46,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 328,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 72,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 329,
+          "records": [
+            {
+              "position_offset": 84,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 330,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 331,
+          "records": [
+            {
+              "position_offset": 108,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 129,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 48,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 338,
+          "records": [
+            {
+              "position_offset": 122,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 125,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 339,
+          "records": [
+            {
+              "position_offset": 102,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 340,
+          "records": [
+            {
+              "position_offset": 120,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "egress": [
+        {
+          "phv_number": 80,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 0,
+                  "header_name": "arp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 11,
+                  "header_name": "ethernet",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 3,
+              "phv_lsb": 3,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 3,
+                  "position_offset": 26,
+                  "header_name": "icmp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 5,
+              "phv_lsb": 5,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 5,
+                  "position_offset": 45,
+                  "header_name": "ipv4",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 6,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 6,
+                  "position_offset": 67,
+                  "header_name": "mpls",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 7,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 7,
+                  "position_offset": 73,
+                  "header_name": "packet_in",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 81,
+          "records": [
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 0,
+                  "position_offset": 78,
+                  "header_name": "tcp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 1,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 1,
+                  "position_offset": 105,
+                  "header_name": "udp",
+                  "hidden": false
+                }
+              ]
+            },
+            {
+              "position_offset": 0,
+              "field_name": "POV",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 0,
+              "phv_msb": 2,
+              "phv_lsb": 2,
+              "is_compiler_generated": false,
+              "is_pov": true,
+              "pov_headers": [
+                {
+                  "bit_index": 2,
+                  "position_offset": 114,
+                  "header_name": "vlan_tag",
+                  "hidden": false
+                }
+              ]
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 144,
+          "records": [
+            {
+              "position_offset": 9,
+              "field_name": "eg_intr_md.egress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 145,
+          "records": [
+            {
+              "position_offset": 76,
+              "field_name": "packet_in.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 7,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 74,
+              "field_name": "packet_in._pad",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 6,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 146,
+          "records": [
+            {
+              "position_offset": 43,
+              "field_name": "ig_intr_md.ingress_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 256,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 257,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 47,
+              "field_lsb": 16,
+              "field_width": 6,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 258,
+          "records": [
+            {
+              "position_offset": 59,
+              "field_name": "ipv4.src_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 259,
+          "records": [
+            {
+              "position_offset": 47,
+              "field_name": "ipv4.dst_addr",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 264,
+          "records": [
+            {
+              "position_offset": 95,
+              "field_name": "tcp.seq_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 265,
+          "records": [
+            {
+              "position_offset": 79,
+              "field_name": "tcp.ack_no",
+              "field_msb": 31,
+              "field_lsb": 0,
+              "field_width": 4,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 35,
+              "field_name": "icmp.timestamp",
+              "field_msb": 63,
+              "field_lsb": 32,
+              "field_width": 8,
+              "phv_msb": 31,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 32
+        },
+        {
+          "phv_number": 288,
+          "records": [
+            {
+              "position_offset": 1,
+              "field_name": "arp.hw_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 66,
+              "field_name": "ipv4.version",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 57,
+              "field_name": "ipv4.ihl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 289,
+          "records": [
+            {
+              "position_offset": 6,
+              "field_name": "arp.proto_addr_len",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 30,
+              "field_name": "icmp.icmp_type",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 290,
+          "records": [
+            {
+              "position_offset": 46,
+              "field_name": "ipv4.diffserv",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 291,
+          "records": [
+            {
+              "position_offset": 29,
+              "field_name": "icmp.icmp_code",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 296,
+          "records": [
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 3,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 7,
+              "phv_lsb": 4,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 71,
+              "field_name": "mpls.tc",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 3,
+              "phv_lsb": 1,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 68,
+              "field_name": "mpls.bos",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 0,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 297,
+          "records": [
+            {
+              "position_offset": 65,
+              "field_name": "ipv4.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 298,
+          "records": [
+            {
+              "position_offset": 58,
+              "field_name": "ipv4.protocol",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 299,
+          "records": [
+            {
+              "position_offset": 72,
+              "field_name": "mpls.ttl",
+              "field_msb": 7,
+              "field_lsb": 0,
+              "field_width": 1,
+              "phv_msb": 7,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 8
+        },
+        {
+          "phv_number": 320,
+          "records": [
+            {
+              "position_offset": 119,
+              "field_name": "vlan_tag.pri",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 115,
+              "field_name": "vlan_tag.cfi",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 121,
+              "field_name": "vlan_tag.vlan_id",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 321,
+          "records": [
+            {
+              "position_offset": 2,
+              "field_name": "arp.hw_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 99,
+              "field_name": "tcp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 112,
+              "field_name": "udp.src_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 27,
+              "field_name": "icmp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 322,
+          "records": [
+            {
+              "position_offset": 7,
+              "field_name": "arp.proto_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 69,
+              "field_name": "mpls.label",
+              "field_msb": 19,
+              "field_lsb": 4,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 323,
+          "records": [
+            {
+              "position_offset": 4,
+              "field_name": "arp.opcode",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 87,
+              "field_name": "tcp.data_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 12,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 93,
+              "field_name": "tcp.res",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 11,
+              "phv_lsb": 9,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 91,
+              "field_name": "tcp.ecn",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 8,
+              "phv_lsb": 6,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 85,
+              "field_name": "tcp.ctrl",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 5,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 108,
+              "field_name": "udp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 31,
+              "field_name": "icmp.identifier",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 324,
+          "records": [
+            {
+              "position_offset": 51,
+              "field_name": "ipv4.flags",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 13,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 53,
+              "field_name": "ipv4.frag_offset",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 12,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 325,
+          "records": [
+            {
+              "position_offset": 12,
+              "field_name": "ethernet.dst_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 332,
+          "records": [
+            {
+              "position_offset": 20,
+              "field_name": "ethernet.src_addr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 6,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 333,
+          "records": [
+            {
+              "position_offset": 18,
+              "field_name": "ethernet.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 334,
+          "records": [
+            {
+              "position_offset": 117,
+              "field_name": "vlan_tag.ether_type",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 335,
+          "records": [
+            {
+              "position_offset": 63,
+              "field_name": "ipv4.total_len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 336,
+          "records": [
+            {
+              "position_offset": 55,
+              "field_name": "ipv4.identification",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 337,
+          "records": [
+            {
+              "position_offset": 89,
+              "field_name": "tcp.dst_port",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 110,
+              "field_name": "udp.len",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 33,
+              "field_name": "icmp.sequence_number",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 344,
+          "records": [
+            {
+              "position_offset": 103,
+              "field_name": "tcp.window",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            },
+            {
+              "position_offset": 106,
+              "field_name": "udp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 345,
+          "records": [
+            {
+              "position_offset": 83,
+              "field_name": "tcp.checksum",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        },
+        {
+          "phv_number": 346,
+          "records": [
+            {
+              "position_offset": 101,
+              "field_name": "tcp.urgent_ptr",
+              "field_msb": 15,
+              "field_lsb": 0,
+              "field_width": 2,
+              "phv_msb": 15,
+              "phv_lsb": 0,
+              "is_compiler_generated": false,
+              "is_pov": false
+            }
+          ],
+          "word_bit_width": 16
+        }
+      ],
+      "stage_number": 11
+    }
+  ],
+  "tables": [
+    {
+      "direction": "ingress",
+      "handle": 16777217,
+      "name": "tbl_act",
+      "table_type": "match",
+      "size": 1,
+      "preferred_match_type": "exact",
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 0,
+            "size": 1,
+            "stage_table_type": "match_with_no_key",
+            "logical_table_id": 0,
+            "has_attached_gateway": true,
+            "memory_resource_allocation": null,
+            "default_next_table": 255,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 0,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 0
+              }
+            ],
+            "result_physical_buses": [ 1 ],
+            "action_format": [
+              {
+                "action_name": "act_0",
+                "action_handle": 536870914,
+                "table_name": "tbl_act_8",
+                "next_table": 0,
+                "next_table_full": 16,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 64,
+                "immediate_fields": []
+              }
+            ],
+            "hash_functions": []
+          }
+        ],
+        "match_type": "match_with_no_key",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "act_0",
+          "handle": 536870914,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "hasExited_0" },
+              "src": [
+                { "type": "immmediate", "name": "0" },
+                { "type": "phv", "name": "B7" }
+              ]
+            }
+          ]
+        }
+      ],
+      "default_action_handle": 536870914,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "performs_hash_action": false,
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": []
+    },
+    {
+      "direction": "egress",
+      "handle": 16777218,
+      "name": "tbl_act_6",
+      "table_type": "match",
+      "size": 1,
+      "preferred_match_type": "exact",
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 0,
+            "size": 1,
+            "stage_table_type": "match_with_no_key",
+            "logical_table_id": 1,
+            "has_attached_gateway": true,
+            "memory_resource_allocation": null,
+            "default_next_table": 255,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 0,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 0
+              }
+            ],
+            "result_physical_buses": [ 0 ],
+            "action_format": [
+              {
+                "action_name": "act_6",
+                "action_handle": 536870915,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 255,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 64,
+                "immediate_fields": []
+              }
+            ],
+            "hash_functions": []
+          }
+        ],
+        "match_type": "match_with_no_key",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "act_6",
+          "handle": 536870915,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "packet_in.$valid" },
+              "src": [
+                { "type": "immmediate", "name": "1" },
+                { "type": "phv", "name": "B16" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "packet_in.ingress_port" },
+              "src": [
+                { "type": "phv", "name": "H18" },
+                { "type": "phv", "name": "H17" }
+              ]
+            }
+          ]
+        }
+      ],
+      "default_action_handle": 536870915,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "performs_hash_action": false,
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": []
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777219,
+      "name": "tbl_act_0",
+      "table_type": "match",
+      "size": 1,
+      "preferred_match_type": "exact",
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 1,
+            "size": 1,
+            "stage_table_type": "match_with_no_key",
+            "logical_table_id": 0,
+            "has_attached_gateway": true,
+            "memory_resource_allocation": null,
+            "default_next_table": 255,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 0,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 0
+              }
+            ],
+            "result_physical_buses": [ 0 ],
+            "action_format": [
+              {
+                "action_name": "act",
+                "action_handle": 536870916,
+                "table_name": "filtering_ingress_port_vlan",
+                "next_table": 0,
+                "next_table_full": 32,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 64,
+                "immediate_fields": []
+              }
+            ],
+            "hash_functions": []
+          }
+        ],
+        "match_type": "match_with_no_key",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "act",
+          "handle": 536870916,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "phv", "name": "H2" },
+                { "type": "phv", "name": "H1" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "hasExited_0" },
+              "src": [
+                { "type": "immmediate", "name": "1" },
+                { "type": "phv", "name": "B7" }
+              ]
+            }
+          ]
+        }
+      ],
+      "default_action_handle": 536870916,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "performs_hash_action": false,
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": []
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777220,
+      "name": "filtering.ingress_port_vlan",
+      "table_type": "match",
+      "size": 512,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 2,
+            "size": 512,
+            "stage_table_type": "ternary_match",
+            "logical_table_id": 0,
+            "has_attached_gateway": true,
+            "pack_format": [
+              {
+                "table_word_width": 47,
+                "memory_word_width": 47,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1,
+                "entries": [
+                  {
+                    "entry_number": 0,
+                    "fields": [
+                      {
+                        "field_name": "--tcam_payload_0--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--version--",
+                        "lsb_mem_word_offset": 43,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "version",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "--tcam_parity_0--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "ig_intr_md.ingress_port",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 9
+                      },
+                      {
+                        "field_name": "vlan_tag.vlan_id",
+                        "lsb_mem_word_offset": 17,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 12
+                      },
+                      {
+                        "field_name": "vlan_tag",
+                        "lsb_mem_word_offset": 35,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 1
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "memory_resource_allocation": {
+              "memory_type": "tcam",
+              "memory_units_and_vpns": [ { "memory_units": [ 0 ], "vpns": [ 0 ] } ],
+              "spare_bank_memory_unit": 0
+            },
+            "default_next_table": 1,
+            "result_physical_buses": [ 0 ],
+            "ternary_indirection_stage_table": {
+              "stage_number": 2,
+              "stage_table_type": "ternary_indirection",
+              "size": 4096,
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 4,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 3,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "lsb_mem_word_offset": 96,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 20,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "lsb_mem_word_offset": 99,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 9,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "lsb_mem_word_offset": 119,
+                          "field_name": "--padding_23_31--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 2,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "lsb_mem_word_offset": 64,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 20,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "lsb_mem_word_offset": 67,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 9,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "lsb_mem_word_offset": 87,
+                          "field_name": "--padding_23_31--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 1,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "lsb_mem_word_offset": 32,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 20,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "lsb_mem_word_offset": 35,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 9,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "lsb_mem_word_offset": 55,
+                          "field_name": "--padding_23_31--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 3,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 20,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "lsb_mem_word_offset": 3,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 9,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "lsb_mem_word_offset": 23,
+                          "field_name": "--padding_23_31--"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "memory_resource_allocation": {
+                "memory_type": "sram",
+                "memory_units_and_vpns": [ { "memory_units": [ 2 ], "vpns": [ 0 ] } ],
+                "spare_bank_memory_unit": 2
+              },
+              "action_format": [
+                {
+                  "action_name": "nop",
+                  "action_handle": 536870919,
+                  "table_name": "tbl_act_12",
+                  "next_table": 0,
+                  "next_table_full": 33,
+                  "vliw_instruction": 0,
+                  "vliw_instruction_full": 65,
+                  "immediate_fields": []
+                },
+                {
+                  "action_name": "filtering.push_internal_vlan",
+                  "action_handle": 536870917,
+                  "table_name": "tbl_act_12",
+                  "next_table": 0,
+                  "next_table_full": 33,
+                  "vliw_instruction": 1,
+                  "vliw_instruction_full": 64,
+                  "immediate_fields": [
+                    {
+                      "param_name": "constant_1",
+                      "param_type": "constant",
+                      "const_value": 1,
+                      "param_shift": 0,
+                      "dest_start": 18,
+                      "dest_width": 1
+                    },
+                    {
+                      "param_name": "constant_1",
+                      "param_type": "constant",
+                      "const_value": 1,
+                      "param_shift": 0,
+                      "dest_start": 19,
+                      "dest_width": 1
+                    },
+                    {
+                      "param_name": "constant_0",
+                      "param_type": "constant",
+                      "const_value": 0,
+                      "param_shift": 0,
+                      "dest_start": 12,
+                      "dest_width": 1
+                    },
+                    {
+                      "param_name": "constant_0",
+                      "param_type": "constant",
+                      "const_value": 0,
+                      "param_shift": 0,
+                      "dest_start": 13,
+                      "dest_width": 3
+                    },
+                    {
+                      "param_name": "new_vlan_id",
+                      "param_type": "parameter",
+                      "param_shift": 0,
+                      "dest_start": 0,
+                      "dest_width": 12
+                    }
+                  ]
+                },
+                {
+                  "action_name": "filtering.set_vlan",
+                  "action_handle": 536870918,
+                  "table_name": "tbl_act_12",
+                  "next_table": 0,
+                  "next_table_full": 33,
+                  "vliw_instruction": 2,
+                  "vliw_instruction_full": 66,
+                  "immediate_fields": [
+                    {
+                      "param_name": "new_vlan_id",
+                      "param_type": "parameter",
+                      "param_shift": 0,
+                      "dest_start": 0,
+                      "dest_width": 12
+                    }
+                  ]
+                },
+                {
+                  "action_name": "filtering.drop",
+                  "action_handle": 536870920,
+                  "table_name": "tbl_act_12",
+                  "next_table": 0,
+                  "next_table_full": 33,
+                  "vliw_instruction": 3,
+                  "vliw_instruction_full": 67,
+                  "immediate_fields": []
+                }
+              ]
+            }
+          }
+        ],
+        "match_type": "ternary"
+      },
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 67108865,
+          "name": "filtering.ingress_port_vlan_counter"
+        }
+      ],
+      "stateful_table_refs": [],
+      "actions": [
+        {
+          "name": "nop",
+          "handle": 536870919,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": []
+        },
+        {
+          "name": "filtering.push_internal_vlan",
+          "handle": 536870917,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "new_vlan_id",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 12
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "vlan_tag.ether_type" },
+              "src": [ { "type": "phv", "name": "H7" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.ether_type" },
+              "src": [ { "immediate": "33024" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "B8" },
+              "src": [
+                { "type": "immediate", "name": "$data1" },
+                { "type": "phv", "name": "B8" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "H3" },
+              "src": [ { "type": "immediate", "name": "$data0" } ]
+            }
+          ]
+        },
+        {
+          "name": "filtering.set_vlan",
+          "handle": 536870918,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "new_vlan_id",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 12
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "vlan_tag.vlan_id" },
+              "src": [
+                { "type": "immediate", "name": "new_vlan_id" },
+                { "type": "phv", "name": "H3" }
+              ]
+            }
+          ]
+        },
+        {
+          "name": "filtering.drop",
+          "handle": 536870920,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.drop_ctl" },
+              "src": [
+                { "type": "immmediate", "name": "1" },
+                { "type": "phv", "name": "H2" }
+              ]
+            }
+          ]
+        }
+      ],
+      "default_action_handle": 536870919,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "ig_intr_md.ingress_port",
+          "position": 0,
+          "match_type": "exact",
+          "start_bit": 0,
+          "bit_width": 9,
+          "bit_width_full": 9,
+          "is_valid": false,
+          "instance_name": "ig_intr_md",
+          "field_name": "ingress_port"
+        },
+        {
+          "name": "vlan_tag",
+          "position": 1,
+          "match_type": "exact",
+          "start_bit": 0,
+          "bit_width": 1,
+          "bit_width_full": 1,
+          "is_valid": true,
+          "instance_name": "vlan_tag",
+          "field_name": ""
+        },
+        {
+          "name": "vlan_tag.vlan_id",
+          "position": 2,
+          "match_type": "ternary",
+          "start_bit": 0,
+          "bit_width": 12,
+          "bit_width_full": 12,
+          "is_valid": false,
+          "instance_name": "vlan_tag",
+          "field_name": "vlan_id"
+        }
+      ]
+    },
+    {
+      "direction": "ingress",
+      "handle": 67108865,
+      "name": "filtering.ingress_port_vlan_counter",
+      "table_type": "statistics",
+      "size": 0,
+      "stage_tables": [
+        {
+          "stage_number": 2,
+          "size": 2048,
+          "stage_table_type": "statistics",
+          "logical_table_id": 0,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 78 ], "vpns": [ 0 ] },
+              { "memory_units": [ 79 ], "vpns": [ 1 ] }
+            ],
+            "spare_bank_memory_unit": 79
+          },
+          "stats_alu_index": 3
+        }
+      ],
+      "how_referenced": "direct",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 36,
+      "packet_counter_resolution": 28,
+      "statistics_type": "packets_and_bytes"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777221,
+      "name": "tbl_act_4",
+      "table_type": "match",
+      "size": 512,
+      "preferred_match_type": "exact",
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 2,
+            "size": 1,
+            "stage_table_type": "match_with_no_key",
+            "logical_table_id": 1,
+            "has_attached_gateway": true,
+            "memory_resource_allocation": null,
+            "default_next_table": 255,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 0,
+                "entries_per_table_word": 0,
+                "number_memory_units_per_table_word": 0
+              }
+            ],
+            "result_physical_buses": [ 1 ],
+            "action_format": [
+              {
+                "action_name": "act_4",
+                "action_handle": 536870921,
+                "table_name": "filtering_fwd_classifier",
+                "next_table": 0,
+                "next_table_full": 48,
+                "vliw_instruction": 0,
+                "vliw_instruction_full": 65,
+                "immediate_fields": []
+              }
+            ],
+            "hash_functions": []
+          }
+        ],
+        "match_type": "match_with_no_key",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "act_4",
+          "handle": 536870921,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": []
+        }
+      ],
+      "default_action_handle": 536870921,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "performs_hash_action": true,
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "indirect",
+          "handle": 67108866,
+          "name": "port_counters_control.ingress_port_counter"
+        }
+      ],
+      "stateful_table_refs": []
+    },
+    {
+      "direction": "ingress",
+      "handle": 67108866,
+      "name": "port_counters_control.ingress_port_counter",
+      "table_type": "statistics",
+      "size": 511,
+      "stage_tables": [
+        {
+          "stage_number": 2,
+          "size": 4096,
+          "stage_table_type": "statistics",
+          "logical_table_id": 1,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 4,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 54 ], "vpns": [ 0 ] },
+              { "memory_units": [ 55 ], "vpns": [ 1 ] }
+            ],
+            "spare_bank_memory_unit": 55
+          },
+          "stats_alu_index": 2
+        }
+      ],
+      "how_referenced": "indirect",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 0,
+      "packet_counter_resolution": 32,
+      "statistics_type": "packets"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777222,
+      "name": "filtering.fwd_classifier",
+      "table_type": "match",
+      "size": 3072,
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 67108867,
+          "name": "filtering.fwd_classifier_counter"
+        }
+      ],
+      "stateful_table_refs": [],
+      "default_action_handle": 536870922,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "ig_intr_md.ingress_port",
+          "position": 0,
+          "match_type": "exact",
+          "start_bit": 0,
+          "bit_width": 9,
+          "bit_width_full": 9,
+          "is_valid": false,
+          "instance_name": "ig_intr_md",
+          "field_name": "ingress_port"
+        },
+        {
+          "name": "ethernet.dst_addr",
+          "position": 1,
+          "match_type": "exact",
+          "start_bit": 0,
+          "bit_width": 48,
+          "bit_width_full": 48,
+          "is_valid": false,
+          "instance_name": "ethernet",
+          "field_name": "dst_addr"
+        },
+        {
+          "name": "fabric_metadata.original_ether_type",
+          "position": 2,
+          "match_type": "exact",
+          "start_bit": 0,
+          "bit_width": 16,
+          "bit_width_full": 16,
+          "is_valid": false,
+          "instance_name": "fabric_metadata",
+          "field_name": "original_ether_type"
+        }
+      ],
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 3,
+            "size": 3072,
+            "stage_table_type": "hash_match",
+            "logical_table_id": 0,
+            "has_attached_gateway": false,
+            "hash_functions": [
+              {
+                "hash_bits": [
+                  {
+                    "hash_bit": 0,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 16, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 18, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 21, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 24, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 25, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 27, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 36, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 39, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 44, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 45, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 46, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 0, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 11, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 12, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 13, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 15, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 1,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 16, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 21, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 22, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 24, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 28, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 34, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 36, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 39, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 1, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 11, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 2,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 18, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 21, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 22, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 23, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 25, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 27, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 28, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 31, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 34, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 36, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 39, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 44, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 2, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 10, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 11, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 12, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 3,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 17, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 23, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 25, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 27, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 28, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 36, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 40, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 42, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 44, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 3, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 11, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 15, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 4,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 17, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 22, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 23, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 31, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 39, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 44, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 46, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 4, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 12, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 5,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 18, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 21, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 23, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 27, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 28, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 31, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 36, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 46, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 5, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 10, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 12, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 6,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 16, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 17, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 22, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 31, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 39, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 45, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 6, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 11, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 12, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 13, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 7,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 16, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 18, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 22, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 28, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 39, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 42, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 7, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 11, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 15, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 8,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 23, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 31, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 37, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 40, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 42, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 44, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 46, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 8, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 10, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 11, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 13, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 15, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 9,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 17, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 18, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 21, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 24, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 25, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 27, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 28, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 13, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 10,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 17, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 18, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 21, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 23, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 24, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 31, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 34, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 36, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 37, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 40, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 42, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 44, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 45, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 46, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 0, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 11, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 13, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 11,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 16, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 21, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 27, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 28, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 34, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 36, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 37, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 42, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 1, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 15, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 12,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 16, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 21, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 22, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 23, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 25, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 28, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 34, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 36, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 40, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 42, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 45, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 2, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 12, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 13, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 13,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 16, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 21, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 22, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 27, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 28, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 31, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 34, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 39, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 42, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 45, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 3, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 11, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 12, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 15, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 14,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 18, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 22, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 24, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 42, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 44, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 4, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 10, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 11, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 12, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 13, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 15, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 15,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 17, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 22, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 23, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 24, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 34, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 40, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 42, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 44, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 5, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 11, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 15, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 16,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 17, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 18, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 21, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 23, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 24, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 27, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 34, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 40, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 44, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 46, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 6, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 10, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 17,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 16, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 17, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 23, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 25, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 27, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 31, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 39, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 40, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 45, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 46, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 7, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 10, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 13, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 15, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 18,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 17, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 21, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 23, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 25, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 28, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 31, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 44, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 45, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 8, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 11, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 15, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 19,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 16, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 17, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 18, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 24, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 31, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 10, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 11, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 13, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 20,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 22, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 24, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 27, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 28, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 34, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 39, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 40, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 42, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 44, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 46, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 0, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 10, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 13, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 21,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 17, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 18, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 21, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 22, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 25, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 31, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 36, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 1, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 10, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 13, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 15, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 22,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 16, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 17, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 22, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 24, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 28, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 31, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 34, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 36, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 42, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 45, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 46, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 2, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 10, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 12, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 13, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 15, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 23,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 16, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 17, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 18, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 21, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 23, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 25, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 27, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 34, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 40, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 42, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 46, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 3, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 11, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 12, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 13, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 24,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 16, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 17, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 18, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 22, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 23, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 24, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 25, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 28, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 34, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 36, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 39, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 42, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 44, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 45, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 46, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 4, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 15, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 25,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 16, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 18, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 22, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 24, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 25, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 27, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 39, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 40, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 42, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 46, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 5, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 12, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 15, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 26,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 23, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 27, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 28, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 34, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 36, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 40, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 44, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 45, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 46, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 6, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 10, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 11, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 12, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 13, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 27,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 21, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 23, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 24, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 28, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 31, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 40, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 44, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 46, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 7, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 10, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 12, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 28,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 17, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 18, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 20, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 24, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 25, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 26, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 37, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 39, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 42, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 8, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 9, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 10, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 13, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 15, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 29,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 19, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 22, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 24, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 29, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 30, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 32, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 33, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 34, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 35, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 36, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 38, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 41, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 43, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 44, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 47, "field_name": "ethernet.dst_addr" },
+                      { "field_bit": 14, "field_name": "ethernet.dst_addr" },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.original_ether_type"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "ig_intr_md.ingress_port"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "ig_intr_md.ingress_port"
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "action_format": [
+              {
+                "action_name": "filtering.set_forwarding_type",
+                "action_handle": 536870922,
+                "table_name": "forwarding_bridging",
+                "next_table": 0,
+                "next_table_full": 64,
+                "vliw_instruction": 0,
+                "vliw_instruction_full": 64,
+                "immediate_fields": [
+                  {
+                    "param_name": "fwd_type",
+                    "param_type": "parameter",
+                    "param_shift": 0,
+                    "dest_start": 3,
+                    "dest_width": 3
+                  }
+                ]
+              }
+            ],
+            "result_physical_buses": [ 14 ],
+            "pack_format": [
+              {
+                "memory_word_width": 128,
+                "table_word_width": 128,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1
+              }
+            ],
+            "memory_resource_allocation": null,
+            "ways": [
+              {
+                "stage_number": 3,
+                "way_number": 0,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 6,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "ethernet.dst_addr",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 65,
+                            "start_bit": 9,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 7
+                          },
+                          {
+                            "field_name": "ethernet.dst_addr",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 8,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "ethernet.dst_addr",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 16,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "ethernet.dst_addr",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 24,
+                            "start_bit": 32,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "ethernet.dst_addr",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 40,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "fabric_metadata.original_ether_type",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 0,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "fabric_metadata.original_ether_type",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 48,
+                            "start_bit": 8,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "ig_intr_md.ingress_port",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 56,
+                            "start_bit": 0,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 6,
+                            "field_name": "--padding_6_7--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 64,
+                            "field_name": "--padding_64_64--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 40,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 72,
+                            "field_name": "--padding_72_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 0,
+                  "hash_entry_bit_hi": 9,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
+                }
+              },
+              {
+                "stage_number": 3,
+                "way_number": 1,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 6,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "ethernet.dst_addr",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 65,
+                            "start_bit": 9,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 7
+                          },
+                          {
+                            "field_name": "ethernet.dst_addr",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 8,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "ethernet.dst_addr",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 16,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "ethernet.dst_addr",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 24,
+                            "start_bit": 32,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "ethernet.dst_addr",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 40,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "fabric_metadata.original_ether_type",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 0,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "fabric_metadata.original_ether_type",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 48,
+                            "start_bit": 8,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "ig_intr_md.ingress_port",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 56,
+                            "start_bit": 0,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 6,
+                            "field_name": "--padding_6_7--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 64,
+                            "field_name": "--padding_64_64--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 40,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 72,
+                            "field_name": "--padding_72_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 10,
+                  "hash_entry_bit_hi": 19,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 87 ], "vpns": [ 1 ] } ]
+                }
+              },
+              {
+                "stage_number": 3,
+                "way_number": 2,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 6,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "ethernet.dst_addr",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 65,
+                            "start_bit": 9,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 7
+                          },
+                          {
+                            "field_name": "ethernet.dst_addr",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 8,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "ethernet.dst_addr",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 16,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "ethernet.dst_addr",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 24,
+                            "start_bit": 32,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "ethernet.dst_addr",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 40,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "fabric_metadata.original_ether_type",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 0,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "fabric_metadata.original_ether_type",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 48,
+                            "start_bit": 8,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "ig_intr_md.ingress_port",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 56,
+                            "start_bit": 0,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 6,
+                            "field_name": "--padding_6_7--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 64,
+                            "field_name": "--padding_64_64--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 40,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 72,
+                            "field_name": "--padding_72_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 20,
+                  "hash_entry_bit_hi": 29,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 88 ], "vpns": [ 2 ] } ]
+                }
+              }
+            ]
+          }
+        ],
+        "match_type": "exact",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "filtering.set_forwarding_type",
+          "handle": 536870922,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "p4_parameters": [
+            {
+              "name": "fwd_type",
+              "start_bit": 0,
+              "position": 0,
+              "default_value": 0,
+              "bit_width": 3
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "fabric_metadata.fwd_type" },
+              "src": [
+                { "type": "immediate", "name": "fwd_type" },
+                { "type": "phv", "name": "H2" }
+              ]
+            }
+          ]
+        }
+      ]
+    },
+    {
+      "direction": "ingress",
+      "handle": 67108867,
+      "name": "filtering.fwd_classifier_counter",
+      "table_type": "statistics",
+      "size": 0,
+      "stage_tables": [
+        {
+          "stage_number": 3,
+          "size": 4096,
+          "stage_table_type": "statistics",
+          "logical_table_id": 0,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 78 ], "vpns": [ 0 ] },
+              { "memory_units": [ 79 ], "vpns": [ 1 ] },
+              { "memory_units": [ 80 ], "vpns": [ 2 ] }
+            ],
+            "spare_bank_memory_unit": 80
+          },
+          "stats_alu_index": 3
+        }
+      ],
+      "how_referenced": "direct",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 36,
+      "packet_counter_resolution": 28,
+      "statistics_type": "packets_and_bytes"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777223,
+      "name": "forwarding.bridging",
+      "table_type": "match",
+      "size": 512,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 4,
+            "size": 512,
+            "stage_table_type": "ternary_match",
+            "logical_table_id": 0,
+            "has_attached_gateway": true,
+            "pack_format": [
+              {
+                "table_word_width": 94,
+                "memory_word_width": 47,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 2,
+                "entries": [
+                  {
+                    "entry_number": 0,
+                    "fields": [
+                      {
+                        "field_name": "--tcam_payload_1--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_1--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "ethernet.dst_addr",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 16,
+                        "field_width": 32
+                      },
+                      {
+                        "field_name": "ethernet.dst_addr",
+                        "lsb_mem_word_offset": 33,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "--tcam_payload_0--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--version--",
+                        "lsb_mem_word_offset": 43,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "version",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "--tcam_parity_0--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "vlan_tag.vlan_id",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "ethernet.dst_addr",
+                        "lsb_mem_word_offset": 9,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "vlan_tag.vlan_id",
+                        "lsb_mem_word_offset": 25,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 4
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "memory_resource_allocation": {
+              "memory_type": "tcam",
+              "memory_units_and_vpns": [ { "memory_units": [ 0, 1 ], "vpns": [ 0 ] } ],
+              "spare_bank_memory_unit": 1
+            },
+            "default_next_table": 0,
+            "result_physical_buses": [ 0, 2 ],
+            "ternary_indirection_stage_table": {
+              "stage_number": 4,
+              "stage_table_type": "ternary_indirection",
+              "size": 2048,
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 2,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 1,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 2,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "lsb_mem_word_offset": 64,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 32,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "lsb_mem_word_offset": 66,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 30,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "lsb_mem_word_offset": 98,
+                          "field_name": "--padding_34_63--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 2,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 32,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "lsb_mem_word_offset": 2,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 30,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "lsb_mem_word_offset": 34,
+                          "field_name": "--padding_34_63--"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "memory_resource_allocation": {
+                "memory_type": "sram",
+                "memory_units_and_vpns": [ { "memory_units": [ 2 ], "vpns": [ 0 ] } ],
+                "spare_bank_memory_unit": 2
+              },
+              "action_format": [
+                {
+                  "action_name": "NoAction",
+                  "action_handle": 536870924,
+                  "table_name": "forwarding_acl",
+                  "next_table": 0,
+                  "next_table_full": 80,
+                  "vliw_instruction": 0,
+                  "vliw_instruction_full": 65,
+                  "immediate_fields": []
+                },
+                {
+                  "action_name": "forwarding.set_next_id",
+                  "action_handle": 536870923,
+                  "table_name": "forwarding_acl",
+                  "next_table": 0,
+                  "next_table_full": 80,
+                  "vliw_instruction": 1,
+                  "vliw_instruction_full": 64,
+                  "immediate_fields": [
+                    {
+                      "param_name": "next_id",
+                      "param_type": "parameter",
+                      "param_shift": 0,
+                      "dest_start": 0,
+                      "dest_width": 32
+                    }
+                  ]
+                }
+              ]
+            }
+          }
+        ],
+        "match_type": "ternary"
+      },
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 67108868,
+          "name": "forwarding.bridging_counter"
+        }
+      ],
+      "stateful_table_refs": [],
+      "actions": [
+        {
+          "name": "NoAction",
+          "handle": 536870924,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": []
+        },
+        {
+          "name": "forwarding.set_next_id",
+          "handle": 536870923,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "next_id",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 32
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "fabric_metadata.next_id" },
+              "src": [ { "type": "immediate", "name": "next_id" } ]
+            }
+          ]
+        }
+      ],
+      "default_action_handle": 536870924,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "vlan_tag.vlan_id",
+          "position": 0,
+          "match_type": "exact",
+          "start_bit": 0,
+          "bit_width": 12,
+          "bit_width_full": 12,
+          "is_valid": false,
+          "instance_name": "vlan_tag",
+          "field_name": "vlan_id"
+        },
+        {
+          "name": "ethernet.dst_addr",
+          "position": 1,
+          "match_type": "ternary",
+          "start_bit": 0,
+          "bit_width": 48,
+          "bit_width_full": 48,
+          "is_valid": false,
+          "instance_name": "ethernet",
+          "field_name": "dst_addr"
+        }
+      ]
+    },
+    {
+      "direction": "ingress",
+      "handle": 67108868,
+      "name": "forwarding.bridging_counter",
+      "table_type": "statistics",
+      "size": 0,
+      "stage_tables": [
+        {
+          "stage_number": 4,
+          "size": 2048,
+          "stage_table_type": "statistics",
+          "logical_table_id": 0,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 6 ], "vpns": [ 0 ] },
+              { "memory_units": [ 7 ], "vpns": [ 1 ] }
+            ],
+            "spare_bank_memory_unit": 7
+          },
+          "stats_alu_index": 0
+        }
+      ],
+      "how_referenced": "direct",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 36,
+      "packet_counter_resolution": 28,
+      "statistics_type": "packets_and_bytes"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777224,
+      "name": "forwarding.mpls",
+      "table_type": "match",
+      "size": 3072,
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 67108869,
+          "name": "forwarding.mpls_counter"
+        }
+      ],
+      "stateful_table_refs": [],
+      "default_action_handle": 536870926,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "mpls.label",
+          "position": 0,
+          "match_type": "exact",
+          "start_bit": 0,
+          "bit_width": 20,
+          "bit_width_full": 20,
+          "is_valid": false,
+          "instance_name": "mpls",
+          "field_name": "label"
+        }
+      ],
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 4,
+            "size": 3072,
+            "stage_table_type": "hash_match",
+            "logical_table_id": 1,
+            "has_attached_gateway": true,
+            "hash_functions": [
+              {
+                "hash_bits": [
+                  {
+                    "hash_bit": 0,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 13, "field_name": "mpls.label" },
+                      { "field_bit": 14, "field_name": "mpls.label" },
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 16, "field_name": "mpls.label" },
+                      { "field_bit": 4, "field_name": "mpls.label" },
+                      { "field_bit": 10, "field_name": "mpls.label" },
+                      { "field_bit": 11, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 1,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 5, "field_name": "mpls.label" },
+                      { "field_bit": 11, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 2,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 18, "field_name": "mpls.label" },
+                      { "field_bit": 6, "field_name": "mpls.label" },
+                      { "field_bit": 11, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 3,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 12, "field_name": "mpls.label" },
+                      { "field_bit": 13, "field_name": "mpls.label" },
+                      { "field_bit": 14, "field_name": "mpls.label" },
+                      { "field_bit": 7, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 4,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 12, "field_name": "mpls.label" },
+                      { "field_bit": 13, "field_name": "mpls.label" },
+                      { "field_bit": 16, "field_name": "mpls.label" },
+                      { "field_bit": 8, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 5,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 12, "field_name": "mpls.label" },
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 16, "field_name": "mpls.label" },
+                      { "field_bit": 18, "field_name": "mpls.label" },
+                      { "field_bit": 9, "field_name": "mpls.label" },
+                      { "field_bit": 10, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 6,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 14, "field_name": "mpls.label" },
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 17, "field_name": "mpls.label" },
+                      { "field_bit": 18, "field_name": "mpls.label" },
+                      { "field_bit": 10, "field_name": "mpls.label" },
+                      { "field_bit": 11, "field_name": "mpls.label" },
+                      { "field_bit": 0, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 7,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 11, "field_name": "mpls.label" },
+                      { "field_bit": 1, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 8,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 12, "field_name": "mpls.label" },
+                      { "field_bit": 13, "field_name": "mpls.label" },
+                      { "field_bit": 14, "field_name": "mpls.label" },
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 10, "field_name": "mpls.label" },
+                      { "field_bit": 11, "field_name": "mpls.label" },
+                      { "field_bit": 2, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 9,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 13, "field_name": "mpls.label" },
+                      { "field_bit": 14, "field_name": "mpls.label" },
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 17, "field_name": "mpls.label" },
+                      { "field_bit": 19, "field_name": "mpls.label" },
+                      { "field_bit": 10, "field_name": "mpls.label" },
+                      { "field_bit": 11, "field_name": "mpls.label" },
+                      { "field_bit": 3, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 10,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 14, "field_name": "mpls.label" },
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 18, "field_name": "mpls.label" },
+                      { "field_bit": 19, "field_name": "mpls.label" },
+                      { "field_bit": 4, "field_name": "mpls.label" },
+                      { "field_bit": 11, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 11,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 13, "field_name": "mpls.label" },
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 16, "field_name": "mpls.label" },
+                      { "field_bit": 19, "field_name": "mpls.label" },
+                      { "field_bit": 5, "field_name": "mpls.label" },
+                      { "field_bit": 11, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 12,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 16, "field_name": "mpls.label" },
+                      { "field_bit": 19, "field_name": "mpls.label" },
+                      { "field_bit": 6, "field_name": "mpls.label" },
+                      { "field_bit": 10, "field_name": "mpls.label" },
+                      { "field_bit": 11, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 13,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 13, "field_name": "mpls.label" },
+                      { "field_bit": 14, "field_name": "mpls.label" },
+                      { "field_bit": 19, "field_name": "mpls.label" },
+                      { "field_bit": 7, "field_name": "mpls.label" },
+                      { "field_bit": 10, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 14,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 13, "field_name": "mpls.label" },
+                      { "field_bit": 17, "field_name": "mpls.label" },
+                      { "field_bit": 18, "field_name": "mpls.label" },
+                      { "field_bit": 8, "field_name": "mpls.label" },
+                      { "field_bit": 11, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 15,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 12, "field_name": "mpls.label" },
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 16, "field_name": "mpls.label" },
+                      { "field_bit": 17, "field_name": "mpls.label" },
+                      { "field_bit": 18, "field_name": "mpls.label" },
+                      { "field_bit": 19, "field_name": "mpls.label" },
+                      { "field_bit": 9, "field_name": "mpls.label" },
+                      { "field_bit": 10, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 16,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 13, "field_name": "mpls.label" },
+                      { "field_bit": 16, "field_name": "mpls.label" },
+                      { "field_bit": 19, "field_name": "mpls.label" },
+                      { "field_bit": 11, "field_name": "mpls.label" },
+                      { "field_bit": 0, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 17,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 16, "field_name": "mpls.label" },
+                      { "field_bit": 18, "field_name": "mpls.label" },
+                      { "field_bit": 10, "field_name": "mpls.label" },
+                      { "field_bit": 11, "field_name": "mpls.label" },
+                      { "field_bit": 1, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 18,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 12, "field_name": "mpls.label" },
+                      { "field_bit": 14, "field_name": "mpls.label" },
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 18, "field_name": "mpls.label" },
+                      { "field_bit": 19, "field_name": "mpls.label" },
+                      { "field_bit": 10, "field_name": "mpls.label" },
+                      { "field_bit": 2, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 19,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 13, "field_name": "mpls.label" },
+                      { "field_bit": 14, "field_name": "mpls.label" },
+                      { "field_bit": 16, "field_name": "mpls.label" },
+                      { "field_bit": 17, "field_name": "mpls.label" },
+                      { "field_bit": 19, "field_name": "mpls.label" },
+                      { "field_bit": 3, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 20,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 14, "field_name": "mpls.label" },
+                      { "field_bit": 18, "field_name": "mpls.label" },
+                      { "field_bit": 19, "field_name": "mpls.label" },
+                      { "field_bit": 4, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 21,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 13, "field_name": "mpls.label" },
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 16, "field_name": "mpls.label" },
+                      { "field_bit": 18, "field_name": "mpls.label" },
+                      { "field_bit": 5, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 22,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 17, "field_name": "mpls.label" },
+                      { "field_bit": 6, "field_name": "mpls.label" },
+                      { "field_bit": 10, "field_name": "mpls.label" },
+                      { "field_bit": 11, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 23,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 12, "field_name": "mpls.label" },
+                      { "field_bit": 13, "field_name": "mpls.label" },
+                      { "field_bit": 14, "field_name": "mpls.label" },
+                      { "field_bit": 19, "field_name": "mpls.label" },
+                      { "field_bit": 7, "field_name": "mpls.label" },
+                      { "field_bit": 10, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 24,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 12, "field_name": "mpls.label" },
+                      { "field_bit": 14, "field_name": "mpls.label" },
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 16, "field_name": "mpls.label" },
+                      { "field_bit": 19, "field_name": "mpls.label" },
+                      { "field_bit": 8, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 25,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 12, "field_name": "mpls.label" },
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 18, "field_name": "mpls.label" },
+                      { "field_bit": 9, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 26,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 12, "field_name": "mpls.label" },
+                      { "field_bit": 13, "field_name": "mpls.label" },
+                      { "field_bit": 14, "field_name": "mpls.label" },
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 16, "field_name": "mpls.label" },
+                      { "field_bit": 17, "field_name": "mpls.label" },
+                      { "field_bit": 18, "field_name": "mpls.label" },
+                      { "field_bit": 19, "field_name": "mpls.label" },
+                      { "field_bit": 0, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 27,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 12, "field_name": "mpls.label" },
+                      { "field_bit": 13, "field_name": "mpls.label" },
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 16, "field_name": "mpls.label" },
+                      { "field_bit": 18, "field_name": "mpls.label" },
+                      { "field_bit": 19, "field_name": "mpls.label" },
+                      { "field_bit": 10, "field_name": "mpls.label" },
+                      { "field_bit": 1, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 28,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 12, "field_name": "mpls.label" },
+                      { "field_bit": 15, "field_name": "mpls.label" },
+                      { "field_bit": 18, "field_name": "mpls.label" },
+                      { "field_bit": 19, "field_name": "mpls.label" },
+                      { "field_bit": 10, "field_name": "mpls.label" },
+                      { "field_bit": 11, "field_name": "mpls.label" },
+                      { "field_bit": 2, "field_name": "mpls.label" }
+                    ]
+                  },
+                  {
+                    "hash_bit": 29,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      { "field_bit": 12, "field_name": "mpls.label" },
+                      { "field_bit": 14, "field_name": "mpls.label" },
+                      { "field_bit": 16, "field_name": "mpls.label" },
+                      { "field_bit": 3, "field_name": "mpls.label" }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "action_format": [
+              {
+                "action_name": "NoAction",
+                "action_handle": 536870926,
+                "table_name": "tbl_act_9",
+                "next_table": 0,
+                "next_table_full": 68,
+                "vliw_instruction": 0,
+                "vliw_instruction_full": 65,
+                "immediate_fields": []
+              },
+              {
+                "action_name": "forwarding.pop_mpls_and_next",
+                "action_handle": 536870925,
+                "table_name": "tbl_act_9",
+                "next_table": 0,
+                "next_table_full": 68,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 66,
+                "immediate_fields": [
+                  {
+                    "param_name": "next_id",
+                    "param_type": "parameter",
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 32
+                  }
+                ]
+              }
+            ],
+            "result_physical_buses": [ 14 ],
+            "pack_format": [
+              {
+                "memory_word_width": 128,
+                "table_word_width": 128,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1
+              }
+            ],
+            "memory_resource_allocation": null,
+            "ways": [
+              {
+                "stage_number": 4,
+                "way_number": 0,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 32,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "lsb_mem_word_offset": 2,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "mpls.label",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 38,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 2
+                          },
+                          {
+                            "field_name": "mpls.label",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 12,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 34,
+                            "field_name": "--padding_34_37--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 64,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 48,
+                            "field_name": "--padding_48_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 0,
+                  "hash_entry_bit_hi": 9,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
+                }
+              },
+              {
+                "stage_number": 4,
+                "way_number": 1,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 32,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "lsb_mem_word_offset": 2,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "mpls.label",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 38,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 2
+                          },
+                          {
+                            "field_name": "mpls.label",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 12,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 34,
+                            "field_name": "--padding_34_37--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 64,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 48,
+                            "field_name": "--padding_48_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 10,
+                  "hash_entry_bit_hi": 19,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 87 ], "vpns": [ 1 ] } ]
+                }
+              },
+              {
+                "stage_number": 4,
+                "way_number": 2,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 32,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "lsb_mem_word_offset": 2,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "mpls.label",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 38,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 2
+                          },
+                          {
+                            "field_name": "mpls.label",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 12,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 34,
+                            "field_name": "--padding_34_37--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 64,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 48,
+                            "field_name": "--padding_48_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 20,
+                  "hash_entry_bit_hi": 29,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 88 ], "vpns": [ 2 ] } ]
+                }
+              }
+            ]
+          }
+        ],
+        "match_type": "exact",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "NoAction",
+          "handle": 536870926,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": []
+        },
+        {
+          "name": "forwarding.pop_mpls_and_next",
+          "handle": 536870925,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "p4_parameters": [
+            {
+              "name": "next_id",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 32
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.$valid" },
+              "src": [
+                { "type": "immmediate", "name": "0" },
+                { "type": "phv", "name": "B7" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "fabric_metadata.next_id" },
+              "src": [ { "type": "immediate", "name": "next_id" } ]
+            }
+          ]
+        }
+      ]
+    },
+    {
+      "direction": "ingress",
+      "handle": 67108869,
+      "name": "forwarding.mpls_counter",
+      "table_type": "statistics",
+      "size": 0,
+      "stage_tables": [
+        {
+          "stage_number": 4,
+          "size": 4096,
+          "stage_table_type": "statistics",
+          "logical_table_id": 1,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 78 ], "vpns": [ 0 ] },
+              { "memory_units": [ 79 ], "vpns": [ 1 ] },
+              { "memory_units": [ 80 ], "vpns": [ 2 ] }
+            ],
+            "spare_bank_memory_unit": 80
+          },
+          "stats_alu_index": 3
+        }
+      ],
+      "how_referenced": "direct",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 36,
+      "packet_counter_resolution": 28,
+      "statistics_type": "packets_and_bytes"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777225,
+      "name": "tbl_act_1",
+      "table_type": "match",
+      "size": 1,
+      "preferred_match_type": "exact",
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 4,
+            "size": 1,
+            "stage_table_type": "match_with_no_key",
+            "logical_table_id": 4,
+            "has_attached_gateway": true,
+            "memory_resource_allocation": null,
+            "default_next_table": 255,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 0,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 0
+              }
+            ],
+            "result_physical_buses": [ 0 ],
+            "action_format": [
+              {
+                "action_name": "act_1",
+                "action_handle": 536870927,
+                "table_name": "forwarding_acl",
+                "next_table": 0,
+                "next_table_full": 80,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 67,
+                "immediate_fields": []
+              }
+            ],
+            "hash_functions": []
+          }
+        ],
+        "match_type": "match_with_no_key",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "act_1",
+          "handle": 536870927,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "vlan_tag.ether_type" },
+              "src": [ { "immediate": "2048" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "fabric_metadata.original_ether_type" },
+              "src": [ { "immediate": "2048" } ]
+            }
+          ]
+        }
+      ],
+      "default_action_handle": 536870927,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "performs_hash_action": false,
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": []
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777226,
+      "name": "forwarding.unicast_v4",
+      "table_type": "match",
+      "size": 512,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 4,
+            "size": 512,
+            "stage_table_type": "ternary_match",
+            "logical_table_id": 2,
+            "has_attached_gateway": true,
+            "pack_format": [
+              {
+                "table_word_width": 47,
+                "memory_word_width": 47,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1,
+                "entries": [
+                  {
+                    "entry_number": 0,
+                    "fields": [
+                      {
+                        "field_name": "--tcam_payload_0--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--version--",
+                        "lsb_mem_word_offset": 43,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "version",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "--tcam_parity_0--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "ipv4.dst_addr",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 24,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "ipv4.dst_addr",
+                        "lsb_mem_word_offset": 9,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 24
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "memory_resource_allocation": {
+              "memory_type": "tcam",
+              "memory_units_and_vpns": [ { "memory_units": [ 5 ], "vpns": [ 0 ] } ],
+              "spare_bank_memory_unit": 5
+            },
+            "default_next_table": 0,
+            "result_physical_buses": [ 10 ],
+            "ternary_indirection_stage_table": {
+              "stage_number": 4,
+              "stage_table_type": "ternary_indirection",
+              "size": 2048,
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 2,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 1,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 2,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "lsb_mem_word_offset": 64,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 32,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "lsb_mem_word_offset": 66,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 30,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "lsb_mem_word_offset": 98,
+                          "field_name": "--padding_34_63--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 2,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 32,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "lsb_mem_word_offset": 2,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 30,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "lsb_mem_word_offset": 34,
+                          "field_name": "--padding_34_63--"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "memory_resource_allocation": {
+                "memory_type": "sram",
+                "memory_units_and_vpns": [ { "memory_units": [ 14 ], "vpns": [ 0 ] } ],
+                "spare_bank_memory_unit": 14
+              },
+              "action_format": [
+                {
+                  "action_name": "NoAction",
+                  "action_handle": 536870929,
+                  "table_name": "forwarding_acl",
+                  "next_table": 0,
+                  "next_table_full": 80,
+                  "vliw_instruction": 0,
+                  "vliw_instruction_full": 65,
+                  "immediate_fields": []
+                },
+                {
+                  "action_name": "forwarding.set_next_id",
+                  "action_handle": 536870928,
+                  "table_name": "forwarding_acl",
+                  "next_table": 0,
+                  "next_table_full": 80,
+                  "vliw_instruction": 1,
+                  "vliw_instruction_full": 68,
+                  "immediate_fields": [
+                    {
+                      "param_name": "next_id",
+                      "param_type": "parameter",
+                      "param_shift": 0,
+                      "dest_start": 0,
+                      "dest_width": 32
+                    }
+                  ]
+                }
+              ]
+            }
+          }
+        ],
+        "match_type": "ternary"
+      },
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 67108870,
+          "name": "forwarding.unicast_v4_counter"
+        }
+      ],
+      "stateful_table_refs": [],
+      "actions": [
+        {
+          "name": "NoAction",
+          "handle": 536870929,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": []
+        },
+        {
+          "name": "forwarding.set_next_id",
+          "handle": 536870928,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "next_id",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 32
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "fabric_metadata.next_id" },
+              "src": [ { "type": "immediate", "name": "next_id" } ]
+            }
+          ]
+        }
+      ],
+      "default_action_handle": 536870929,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "ipv4.dst_addr",
+          "position": 0,
+          "match_type": "lpm",
+          "start_bit": 0,
+          "bit_width": 32,
+          "bit_width_full": 32,
+          "is_valid": false,
+          "instance_name": "ipv4",
+          "field_name": "dst_addr"
+        }
+      ]
+    },
+    {
+      "direction": "ingress",
+      "handle": 67108870,
+      "name": "forwarding.unicast_v4_counter",
+      "table_type": "statistics",
+      "size": 0,
+      "stage_tables": [
+        {
+          "stage_number": 4,
+          "size": 2048,
+          "stage_table_type": "statistics",
+          "logical_table_id": 2,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 30 ], "vpns": [ 0 ] },
+              { "memory_units": [ 31 ], "vpns": [ 1 ] }
+            ],
+            "spare_bank_memory_unit": 31
+          },
+          "stats_alu_index": 1
+        }
+      ],
+      "how_referenced": "direct",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 36,
+      "packet_counter_resolution": 28,
+      "statistics_type": "packets_and_bytes"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777227,
+      "name": "forwarding.multicast_v4",
+      "table_type": "match",
+      "size": 512,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 4,
+            "size": 512,
+            "stage_table_type": "ternary_match",
+            "logical_table_id": 3,
+            "has_attached_gateway": true,
+            "pack_format": [
+              {
+                "table_word_width": 141,
+                "memory_word_width": 47,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 3,
+                "entries": [
+                  {
+                    "entry_number": 0,
+                    "fields": [
+                      {
+                        "field_name": "--tcam_payload_2--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_2--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "vlan_tag.vlan_id",
+                        "lsb_mem_word_offset": 17,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "--tcam_payload_1--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_1--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "ipv4.dst_addr",
+                        "lsb_mem_word_offset": 33,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 24,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "--tcam_payload_0--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--version--",
+                        "lsb_mem_word_offset": 43,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "version",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "--tcam_parity_0--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "ipv4.dst_addr",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 16
+                      },
+                      {
+                        "field_name": "vlan_tag.vlan_id",
+                        "lsb_mem_word_offset": 17,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 4
+                      },
+                      {
+                        "field_name": "ipv4.dst_addr",
+                        "lsb_mem_word_offset": 25,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "memory_resource_allocation": {
+              "memory_type": "tcam",
+              "memory_units_and_vpns": [ { "memory_units": [ 2, 3, 4 ], "vpns": [ 0 ] } ],
+              "spare_bank_memory_unit": 4
+            },
+            "default_next_table": 0,
+            "result_physical_buses": [ 4, 6, 8 ],
+            "ternary_indirection_stage_table": {
+              "stage_number": 4,
+              "stage_table_type": "ternary_indirection",
+              "size": 2048,
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 2,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 1,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 2,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "lsb_mem_word_offset": 64,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 32,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "lsb_mem_word_offset": 66,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 30,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "lsb_mem_word_offset": 98,
+                          "field_name": "--padding_34_63--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 2,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 32,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "lsb_mem_word_offset": 2,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 30,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "lsb_mem_word_offset": 34,
+                          "field_name": "--padding_34_63--"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "memory_resource_allocation": {
+                "memory_type": "sram",
+                "memory_units_and_vpns": [ { "memory_units": [ 26 ], "vpns": [ 0 ] } ],
+                "spare_bank_memory_unit": 26
+              },
+              "action_format": [
+                {
+                  "action_name": "NoAction",
+                  "action_handle": 536870931,
+                  "table_name": "forwarding_acl",
+                  "next_table": 0,
+                  "next_table_full": 80,
+                  "vliw_instruction": 0,
+                  "vliw_instruction_full": 65,
+                  "immediate_fields": []
+                },
+                {
+                  "action_name": "forwarding.set_next_id",
+                  "action_handle": 536870930,
+                  "table_name": "forwarding_acl",
+                  "next_table": 0,
+                  "next_table_full": 80,
+                  "vliw_instruction": 1,
+                  "vliw_instruction_full": 70,
+                  "immediate_fields": [
+                    {
+                      "param_name": "next_id",
+                      "param_type": "parameter",
+                      "param_shift": 0,
+                      "dest_start": 0,
+                      "dest_width": 32
+                    }
+                  ]
+                }
+              ]
+            }
+          }
+        ],
+        "match_type": "ternary"
+      },
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 67108871,
+          "name": "forwarding.multicast_v4_counter"
+        }
+      ],
+      "stateful_table_refs": [],
+      "actions": [
+        {
+          "name": "NoAction",
+          "handle": 536870931,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": []
+        },
+        {
+          "name": "forwarding.set_next_id",
+          "handle": 536870930,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "next_id",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 32
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "fabric_metadata.next_id" },
+              "src": [ { "type": "immediate", "name": "next_id" } ]
+            }
+          ]
+        }
+      ],
+      "default_action_handle": 536870931,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "vlan_tag.vlan_id",
+          "position": 0,
+          "match_type": "exact",
+          "start_bit": 0,
+          "bit_width": 12,
+          "bit_width_full": 12,
+          "is_valid": false,
+          "instance_name": "vlan_tag",
+          "field_name": "vlan_id"
+        },
+        {
+          "name": "ipv4.dst_addr",
+          "position": 1,
+          "match_type": "lpm",
+          "start_bit": 0,
+          "bit_width": 32,
+          "bit_width_full": 32,
+          "is_valid": false,
+          "instance_name": "ipv4",
+          "field_name": "dst_addr"
+        }
+      ]
+    },
+    {
+      "direction": "ingress",
+      "handle": 67108871,
+      "name": "forwarding.multicast_v4_counter",
+      "table_type": "statistics",
+      "size": 0,
+      "stage_tables": [
+        {
+          "stage_number": 4,
+          "size": 2048,
+          "stage_table_type": "statistics",
+          "logical_table_id": 3,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 54 ], "vpns": [ 0 ] },
+              { "memory_units": [ 55 ], "vpns": [ 1 ] }
+            ],
+            "spare_bank_memory_unit": 55
+          },
+          "stats_alu_index": 2
+        }
+      ],
+      "how_referenced": "direct",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 36,
+      "packet_counter_resolution": 28,
+      "statistics_type": "packets_and_bytes"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777228,
+      "name": "forwarding.acl",
+      "table_type": "match",
+      "size": 256,
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 5,
+            "size": 512,
+            "stage_table_type": "ternary_match",
+            "logical_table_id": 0,
+            "has_attached_gateway": false,
+            "pack_format": [
+              {
+                "table_word_width": 282,
+                "memory_word_width": 47,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 6,
+                "entries": [
+                  {
+                    "entry_number": 0,
+                    "fields": [
+                      {
+                        "field_name": "--tcam_payload_5--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 5,
+                        "msb_mem_word_idx": 5,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_5--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 5,
+                        "msb_mem_word_idx": 5,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "ethernet.dst_addr",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 5,
+                        "msb_mem_word_idx": 5,
+                        "source": "spec",
+                        "start_bit": 16,
+                        "field_width": 32
+                      },
+                      {
+                        "field_name": "ethernet.src_addr",
+                        "lsb_mem_word_offset": 33,
+                        "lsb_mem_word_idx": 5,
+                        "msb_mem_word_idx": 5,
+                        "source": "spec",
+                        "start_bit": 16,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "ig_intr_md.ingress_port",
+                        "lsb_mem_word_offset": 41,
+                        "lsb_mem_word_idx": 5,
+                        "msb_mem_word_idx": 5,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_payload_4--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 4,
+                        "msb_mem_word_idx": 4,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--version--",
+                        "lsb_mem_word_offset": 43,
+                        "lsb_mem_word_idx": 4,
+                        "msb_mem_word_idx": 4,
+                        "source": "version",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "--tcam_parity_4--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 4,
+                        "msb_mem_word_idx": 4,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "ethernet.src_addr",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 4,
+                        "msb_mem_word_idx": 4,
+                        "source": "spec",
+                        "start_bit": 32,
+                        "field_width": 16
+                      },
+                      {
+                        "field_name": "ipv4.dst_addr",
+                        "lsb_mem_word_offset": 17,
+                        "lsb_mem_word_idx": 4,
+                        "msb_mem_word_idx": 4,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "ethernet.src_addr",
+                        "lsb_mem_word_offset": 25,
+                        "lsb_mem_word_idx": 4,
+                        "msb_mem_word_idx": 4,
+                        "source": "spec",
+                        "start_bit": 24,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "ipv4.dst_addr",
+                        "lsb_mem_word_offset": 33,
+                        "lsb_mem_word_idx": 4,
+                        "msb_mem_word_idx": 4,
+                        "source": "spec",
+                        "start_bit": 16,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "--tcam_payload_3--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 3,
+                        "msb_mem_word_idx": 3,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_3--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 3,
+                        "msb_mem_word_idx": 3,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "ipv4.dst_addr",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 3,
+                        "msb_mem_word_idx": 3,
+                        "source": "spec",
+                        "start_bit": 24,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "ipv4.src_addr",
+                        "lsb_mem_word_offset": 9,
+                        "lsb_mem_word_idx": 3,
+                        "msb_mem_word_idx": 3,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "ipv4.dst_addr",
+                        "lsb_mem_word_offset": 17,
+                        "lsb_mem_word_idx": 3,
+                        "msb_mem_word_idx": 3,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "ipv4.src_addr",
+                        "lsb_mem_word_offset": 25,
+                        "lsb_mem_word_idx": 3,
+                        "msb_mem_word_idx": 3,
+                        "source": "spec",
+                        "start_bit": 16,
+                        "field_width": 16
+                      },
+                      {
+                        "field_name": "fabric_metadata.l4_dst_port",
+                        "lsb_mem_word_offset": 41,
+                        "lsb_mem_word_idx": 3,
+                        "msb_mem_word_idx": 3,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 4
+                      },
+                      {
+                        "field_name": "fabric_metadata.l4_dst_port",
+                        "lsb_mem_word_offset": 41,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "spec",
+                        "start_bit": 4,
+                        "field_width": 4
+                      },
+                      {
+                        "field_name": "--tcam_payload_2--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_2--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "ipv4.src_addr",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "ethernet.dst_addr",
+                        "lsb_mem_word_offset": 9,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 16
+                      },
+                      {
+                        "field_name": "ethernet.src_addr",
+                        "lsb_mem_word_offset": 25,
+                        "lsb_mem_word_idx": 2,
+                        "msb_mem_word_idx": 2,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 16
+                      },
+                      {
+                        "field_name": "--tcam_payload_1--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_1--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "fabric_metadata.l4_src_port",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "fabric_metadata.l4_dst_port",
+                        "lsb_mem_word_offset": 9,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "fabric_metadata.original_ether_type",
+                        "lsb_mem_word_offset": 17,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "fabric_metadata.l4_src_port",
+                        "lsb_mem_word_offset": 25,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "ig_intr_md.ingress_port",
+                        "lsb_mem_word_offset": 33,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "icmp.icmp_type",
+                        "lsb_mem_word_offset": 41,
+                        "lsb_mem_word_idx": 1,
+                        "msb_mem_word_idx": 1,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 4
+                      },
+                      {
+                        "field_name": "icmp.icmp_type",
+                        "lsb_mem_word_offset": 41,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 4,
+                        "field_width": 4
+                      },
+                      {
+                        "field_name": "--tcam_payload_0--",
+                        "lsb_mem_word_offset": 0,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "payload",
+                        "start_bit": 0,
+                        "field_width": 1
+                      },
+                      {
+                        "field_name": "--tcam_parity_0--",
+                        "lsb_mem_word_offset": 45,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "parity",
+                        "start_bit": 0,
+                        "field_width": 2
+                      },
+                      {
+                        "field_name": "vlan_tag.vlan_id",
+                        "lsb_mem_word_offset": 1,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "fabric_metadata.original_ether_type",
+                        "lsb_mem_word_offset": 9,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "fabric_metadata.ip_proto",
+                        "lsb_mem_word_offset": 17,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      },
+                      {
+                        "field_name": "vlan_tag.vlan_id",
+                        "lsb_mem_word_offset": 25,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 8,
+                        "field_width": 4
+                      },
+                      {
+                        "field_name": "icmp.icmp_code",
+                        "lsb_mem_word_offset": 33,
+                        "lsb_mem_word_idx": 0,
+                        "msb_mem_word_idx": 0,
+                        "source": "spec",
+                        "start_bit": 0,
+                        "field_width": 8
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "memory_resource_allocation": {
+              "memory_type": "tcam",
+              "memory_units_and_vpns": [ { "memory_units": [ 0, 1, 2, 3, 4, 5 ], "vpns": [ 0 ] } ],
+              "spare_bank_memory_unit": 5
+            },
+            "default_next_table": 0,
+            "result_physical_buses": [ 0, 2, 4, 6, 8, 10 ],
+            "ternary_indirection_stage_table": {
+              "stage_number": 5,
+              "stage_table_type": "ternary_indirection",
+              "size": 2048,
+              "pack_format": [
+                {
+                  "memory_word_width": 128,
+                  "table_word_width": 128,
+                  "entries_per_table_word": 2,
+                  "number_memory_units_per_table_word": 1,
+                  "entries": [
+                    {
+                      "entry_number": 1,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 2,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "lsb_mem_word_offset": 64,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 32,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "lsb_mem_word_offset": 66,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 30,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "lsb_mem_word_offset": 98,
+                          "field_name": "--padding_34_63--"
+                        }
+                      ]
+                    },
+                    {
+                      "entry_number": 0,
+                      "fields": [
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 2,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "instr",
+                          "lsb_mem_word_offset": 0,
+                          "field_name": "action"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 32,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "immediate",
+                          "lsb_mem_word_offset": 2,
+                          "field_name": "immediate"
+                        },
+                        {
+                          "start_bit": 0,
+                          "enable_pfe": false,
+                          "field_width": 30,
+                          "lsb_mem_word_idx": 0,
+                          "msb_mem_word_idx": 0,
+                          "source": "zero",
+                          "lsb_mem_word_offset": 34,
+                          "field_name": "--padding_34_63--"
+                        }
+                      ]
+                    }
+                  ]
+                }
+              ],
+              "memory_resource_allocation": {
+                "memory_type": "sram",
+                "memory_units_and_vpns": [ { "memory_units": [ 2 ], "vpns": [ 0 ] } ],
+                "spare_bank_memory_unit": 2
+              },
+              "action_format": [
+                {
+                  "action_name": "nop",
+                  "action_handle": 536870935,
+                  "table_name": "next_simple",
+                  "next_table": 0,
+                  "next_table_full": 96,
+                  "vliw_instruction": 0,
+                  "vliw_instruction_full": 67,
+                  "immediate_fields": []
+                },
+                {
+                  "action_name": "forwarding.set_next_id",
+                  "action_handle": 536870932,
+                  "table_name": "next_simple",
+                  "next_table": 0,
+                  "next_table_full": 96,
+                  "vliw_instruction": 1,
+                  "vliw_instruction_full": 64,
+                  "immediate_fields": [
+                    {
+                      "param_name": "next_id",
+                      "param_type": "parameter",
+                      "param_shift": 0,
+                      "dest_start": 0,
+                      "dest_width": 32
+                    }
+                  ]
+                },
+                {
+                  "action_name": "forwarding.duplicate_to_controller",
+                  "action_handle": 536870933,
+                  "table_name": "next_simple",
+                  "next_table": 0,
+                  "next_table_full": 96,
+                  "vliw_instruction": 2,
+                  "vliw_instruction_full": 65,
+                  "immediate_fields": [
+                    {
+                      "param_name": "constant_192",
+                      "param_type": "constant",
+                      "const_value": 192,
+                      "param_shift": 0,
+                      "dest_start": 0,
+                      "dest_width": 9
+                    }
+                  ]
+                },
+                {
+                  "action_name": "forwarding.drop",
+                  "action_handle": 536870934,
+                  "table_name": "next_simple",
+                  "next_table": 0,
+                  "next_table_full": 96,
+                  "vliw_instruction": 3,
+                  "vliw_instruction_full": 66,
+                  "immediate_fields": []
+                }
+              ]
+            }
+          }
+        ],
+        "match_type": "ternary"
+      },
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 67108872,
+          "name": "forwarding.acl_counter"
+        }
+      ],
+      "stateful_table_refs": [],
+      "actions": [
+        {
+          "name": "nop",
+          "handle": 536870935,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": []
+        },
+        {
+          "name": "forwarding.set_next_id",
+          "handle": 536870932,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "next_id",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 32
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "fabric_metadata.next_id" },
+              "src": [ { "type": "immediate", "name": "next_id" } ]
+            }
+          ]
+        },
+        {
+          "name": "forwarding.duplicate_to_controller",
+          "handle": 536870933,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "immediate", "name": "$constant0" },
+                { "type": "phv", "name": "H1" }
+              ]
+            }
+          ]
+        },
+        {
+          "name": "forwarding.drop",
+          "handle": 536870934,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.drop_ctl" },
+              "src": [
+                { "type": "immmediate", "name": "1" },
+                { "type": "phv", "name": "H2" }
+              ]
+            }
+          ]
+        }
+      ],
+      "default_action_handle": 536870935,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "ig_intr_md.ingress_port",
+          "position": 0,
+          "match_type": "ternary",
+          "start_bit": 0,
+          "bit_width": 9,
+          "bit_width_full": 9,
+          "is_valid": false,
+          "instance_name": "ig_intr_md",
+          "field_name": "ingress_port"
+        },
+        {
+          "name": "fabric_metadata.ip_proto",
+          "position": 1,
+          "match_type": "ternary",
+          "start_bit": 0,
+          "bit_width": 8,
+          "bit_width_full": 8,
+          "is_valid": false,
+          "instance_name": "fabric_metadata",
+          "field_name": "ip_proto"
+        },
+        {
+          "name": "fabric_metadata.l4_src_port",
+          "position": 2,
+          "match_type": "ternary",
+          "start_bit": 0,
+          "bit_width": 16,
+          "bit_width_full": 16,
+          "is_valid": false,
+          "instance_name": "fabric_metadata",
+          "field_name": "l4_src_port"
+        },
+        {
+          "name": "fabric_metadata.l4_dst_port",
+          "position": 3,
+          "match_type": "ternary",
+          "start_bit": 0,
+          "bit_width": 16,
+          "bit_width_full": 16,
+          "is_valid": false,
+          "instance_name": "fabric_metadata",
+          "field_name": "l4_dst_port"
+        },
+        {
+          "name": "fabric_metadata.original_ether_type",
+          "position": 4,
+          "match_type": "ternary",
+          "start_bit": 0,
+          "bit_width": 16,
+          "bit_width_full": 16,
+          "is_valid": false,
+          "instance_name": "fabric_metadata",
+          "field_name": "original_ether_type"
+        },
+        {
+          "name": "ethernet.dst_addr",
+          "position": 5,
+          "match_type": "ternary",
+          "start_bit": 0,
+          "bit_width": 48,
+          "bit_width_full": 48,
+          "is_valid": false,
+          "instance_name": "ethernet",
+          "field_name": "dst_addr"
+        },
+        {
+          "name": "ethernet.src_addr",
+          "position": 6,
+          "match_type": "ternary",
+          "start_bit": 0,
+          "bit_width": 48,
+          "bit_width_full": 48,
+          "is_valid": false,
+          "instance_name": "ethernet",
+          "field_name": "src_addr"
+        },
+        {
+          "name": "vlan_tag.vlan_id",
+          "position": 7,
+          "match_type": "ternary",
+          "start_bit": 0,
+          "bit_width": 12,
+          "bit_width_full": 12,
+          "is_valid": false,
+          "instance_name": "vlan_tag",
+          "field_name": "vlan_id"
+        },
+        {
+          "name": "ipv4.src_addr",
+          "position": 8,
+          "match_type": "ternary",
+          "start_bit": 0,
+          "bit_width": 32,
+          "bit_width_full": 32,
+          "is_valid": false,
+          "instance_name": "ipv4",
+          "field_name": "src_addr"
+        },
+        {
+          "name": "ipv4.dst_addr",
+          "position": 9,
+          "match_type": "ternary",
+          "start_bit": 0,
+          "bit_width": 32,
+          "bit_width_full": 32,
+          "is_valid": false,
+          "instance_name": "ipv4",
+          "field_name": "dst_addr"
+        },
+        {
+          "name": "icmp.icmp_type",
+          "position": 10,
+          "match_type": "ternary",
+          "start_bit": 0,
+          "bit_width": 8,
+          "bit_width_full": 8,
+          "is_valid": false,
+          "instance_name": "icmp",
+          "field_name": "icmp_type"
+        },
+        {
+          "name": "icmp.icmp_code",
+          "position": 11,
+          "match_type": "ternary",
+          "start_bit": 0,
+          "bit_width": 8,
+          "bit_width_full": 8,
+          "is_valid": false,
+          "instance_name": "icmp",
+          "field_name": "icmp_code"
+        }
+      ]
+    },
+    {
+      "direction": "ingress",
+      "handle": 67108872,
+      "name": "forwarding.acl_counter",
+      "table_type": "statistics",
+      "size": 0,
+      "stage_tables": [
+        {
+          "stage_number": 5,
+          "size": 2048,
+          "stage_table_type": "statistics",
+          "logical_table_id": 0,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 78 ], "vpns": [ 0 ] },
+              { "memory_units": [ 79 ], "vpns": [ 1 ] }
+            ],
+            "spare_bank_memory_unit": 79
+          },
+          "stats_alu_index": 3
+        }
+      ],
+      "how_referenced": "direct",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 36,
+      "packet_counter_resolution": 28,
+      "statistics_type": "packets_and_bytes"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777229,
+      "name": "next.simple",
+      "table_type": "match",
+      "size": 3072,
+      "action_data_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 33554433,
+          "name": "next_simple$action"
+        }
+      ],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 67108873,
+          "name": "next.simple_counter"
+        }
+      ],
+      "stateful_table_refs": [],
+      "default_action_handle": 0,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "fabric_metadata.next_id",
+          "position": 0,
+          "match_type": "exact",
+          "start_bit": 0,
+          "bit_width": 32,
+          "bit_width_full": 32,
+          "is_valid": false,
+          "instance_name": "fabric_metadata",
+          "field_name": "next_id"
+        }
+      ],
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 6,
+            "size": 3072,
+            "stage_table_type": "hash_match",
+            "logical_table_id": 0,
+            "has_attached_gateway": false,
+            "hash_functions": [
+              {
+                "hash_bits": [
+                  {
+                    "hash_bit": 0,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 1,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 2,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 3,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 4,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 5,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 6,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 7,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 8,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 9,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 10,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 11,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 12,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 13,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 14,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 15,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 16,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 17,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 18,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 19,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 20,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 21,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 22,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 23,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 24,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 25,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 26,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 27,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 28,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 29,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "action_format": [
+              {
+                "action_name": "NoAction",
+                "action_handle": 536870940,
+                "table_name": "next_hashed",
+                "next_table": 0,
+                "next_table_full": 114,
+                "vliw_instruction": 0,
+                "vliw_instruction_full": 65,
+                "immediate_fields": []
+              },
+              {
+                "action_name": "next.output",
+                "action_handle": 536870936,
+                "table_name": "next_hashed",
+                "next_table": 1,
+                "next_table_full": 114,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 64,
+                "immediate_fields": []
+              },
+              {
+                "action_name": "next.set_vlan_output",
+                "action_handle": 536870937,
+                "table_name": "next_hashed",
+                "next_table": 2,
+                "next_table_full": 114,
+                "vliw_instruction": 2,
+                "vliw_instruction_full": 66,
+                "immediate_fields": []
+              },
+              {
+                "action_name": "next.l3_routing",
+                "action_handle": 536870938,
+                "table_name": "next_hashed",
+                "next_table": 3,
+                "next_table_full": 114,
+                "vliw_instruction": 3,
+                "vliw_instruction_full": 68,
+                "immediate_fields": []
+              },
+              {
+                "action_name": "next.mpls_routing_v4",
+                "action_handle": 536870939,
+                "table_name": "next_hashed",
+                "next_table": 4,
+                "next_table_full": 114,
+                "vliw_instruction": 4,
+                "vliw_instruction_full": 70,
+                "immediate_fields": [
+                  {
+                    "param_name": "constant_0",
+                    "param_type": "constant",
+                    "const_value": 0,
+                    "param_shift": 0,
+                    "dest_start": 1,
+                    "dest_width": 3
+                  },
+                  {
+                    "param_name": "constant_1",
+                    "param_type": "constant",
+                    "const_value": 1,
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 1
+                  },
+                  {
+                    "param_name": "label",
+                    "param_type": "parameter",
+                    "param_shift": 0,
+                    "dest_start": 4,
+                    "dest_width": 4
+                  }
+                ]
+              }
+            ],
+            "result_physical_buses": [ 14 ],
+            "pack_format": [
+              {
+                "memory_word_width": 128,
+                "table_word_width": 128,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1
+              }
+            ],
+            "memory_resource_allocation": null,
+            "ways": [
+              {
+                "stage_number": 6,
+                "way_number": 0,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 3,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 8,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "lsb_mem_word_offset": 3,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "lsb_mem_word_offset": 12,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 34,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 16,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 24,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 11,
+                            "field_name": "--padding_11_11--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 32,
+                            "field_name": "--padding_32_33--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 88,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 40,
+                            "field_name": "--padding_40_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 0,
+                  "hash_entry_bit_hi": 9,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
+                }
+              },
+              {
+                "stage_number": 6,
+                "way_number": 1,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 3,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 8,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "lsb_mem_word_offset": 3,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "lsb_mem_word_offset": 12,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 34,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 16,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 24,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 11,
+                            "field_name": "--padding_11_11--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 32,
+                            "field_name": "--padding_32_33--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 88,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 40,
+                            "field_name": "--padding_40_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 10,
+                  "hash_entry_bit_hi": 19,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 87 ], "vpns": [ 1 ] } ]
+                }
+              },
+              {
+                "stage_number": 6,
+                "way_number": 2,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 3,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 8,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "lsb_mem_word_offset": 3,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "lsb_mem_word_offset": 12,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 34,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 16,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 24,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 11,
+                            "field_name": "--padding_11_11--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 32,
+                            "field_name": "--padding_32_33--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 88,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 40,
+                            "field_name": "--padding_40_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 20,
+                  "hash_entry_bit_hi": 29,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 88 ], "vpns": [ 2 ] } ]
+                }
+              }
+            ]
+          }
+        ],
+        "match_type": "exact",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "NoAction",
+          "handle": 536870940,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": []
+        },
+        {
+          "name": "next.output",
+          "handle": 536870936,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "port_num",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 9
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "action_param", "name": "port_num" },
+                { "type": "phv", "name": "H1" }
+              ]
+            }
+          ]
+        },
+        {
+          "name": "next.set_vlan_output",
+          "handle": 536870937,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "new_vlan_id",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 12
+            },
+            {
+              "name": "port_num",
+              "start_bit": 12,
+              "position": 1,
+              "bit_width": 9
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "vlan_tag.vlan_id" },
+              "src": [
+                { "type": "action_param", "name": "new_vlan_id" },
+                { "type": "phv", "name": "H3" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "fabric_metadata.pop_vlan_at_egress" },
+              "src": [
+                { "type": "immmediate", "name": "0" },
+                { "type": "phv", "name": "B8" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "action_param", "name": "port_num" },
+                { "type": "phv", "name": "H1" }
+              ]
+            }
+          ]
+        },
+        {
+          "name": "next.l3_routing",
+          "handle": 536870938,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "port_num",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 9
+            },
+            { "name": "smac", "start_bit": 9, "position": 1, "bit_width": 48 },
+            { "name": "dmac", "start_bit": 57, "position": 2, "bit_width": 48 }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "action_param", "name": "port_num" },
+                { "type": "phv", "name": "H1" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "dmac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "smac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "dmac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "smac.16-47" } ]
+            }
+          ]
+        },
+        {
+          "name": "next.mpls_routing_v4",
+          "handle": 536870939,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "port_num",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 9
+            },
+            { "name": "smac", "start_bit": 9, "position": 1, "bit_width": 48 },
+            { "name": "dmac", "start_bit": 57, "position": 2, "bit_width": 48 },
+            {
+              "name": "label",
+              "start_bit": 105,
+              "position": 3,
+              "bit_width": 20
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "action_param", "name": "port_num" },
+                { "type": "phv", "name": "H1" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.$valid" },
+              "src": [
+                { "type": "immmediate", "name": "1" },
+                { "type": "phv", "name": "B7" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "vlan_tag.ether_type" },
+              "src": [ { "immediate": "34887" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.ttl" },
+              "src": [ { "immediate": "64" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.label.4-19" },
+              "src": [ { "type": "action_param", "name": "label.4-19" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "dmac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "smac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "dmac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "smac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "B2" },
+              "src": [ { "type": "immediate", "name": "$data0" } ]
+            }
+          ]
+        }
+      ]
+    },
+    {
+      "direction": "ingress",
+      "handle": 67108873,
+      "name": "next.simple_counter",
+      "table_type": "statistics",
+      "size": 0,
+      "stage_tables": [
+        {
+          "stage_number": 6,
+          "size": 4096,
+          "stage_table_type": "statistics",
+          "logical_table_id": 0,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 78 ], "vpns": [ 0 ] },
+              { "memory_units": [ 79 ], "vpns": [ 1 ] },
+              { "memory_units": [ 80 ], "vpns": [ 2 ] }
+            ],
+            "spare_bank_memory_unit": 80
+          },
+          "stats_alu_index": 3
+        }
+      ],
+      "how_referenced": "direct",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 36,
+      "packet_counter_resolution": 28,
+      "statistics_type": "packets_and_bytes"
+    },
+    {
+      "direction": "ingress",
+      "handle": 33554433,
+      "name": "next_simple$action",
+      "table_type": "action",
+      "size": 3072,
+      "stage_tables": [
+        {
+          "stage_number": 6,
+          "size": 3072,
+          "stage_table_type": "action_data",
+          "logical_table_id": 0,
+          "pack_format": [
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 128,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_127--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870940
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 9,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 48,
+                      "field_name": "port_num"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 48,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_47--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 71,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 57,
+                      "field_name": "--padding_57_127--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870936
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 9,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 32,
+                      "field_name": "port_num"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 12,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 48,
+                      "field_name": "new_vlan_id"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_31--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 41,
+                      "field_name": "--padding_41_47--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 68,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 60,
+                      "field_name": "--padding_60_127--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870937
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 9,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 16,
+                      "field_name": "port_num"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 32,
+                      "field_name": "dmac"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 48,
+                      "field_name": "smac"
+                    },
+                    {
+                      "start_bit": 16,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "dmac"
+                    },
+                    {
+                      "start_bit": 16,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "smac"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_15--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 25,
+                      "field_name": "--padding_25_31--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870938
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 9,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "port_num"
+                    },
+                    {
+                      "start_bit": 4,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 16,
+                      "field_name": "label"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 32,
+                      "field_name": "dmac"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 48,
+                      "field_name": "smac"
+                    },
+                    {
+                      "start_bit": 16,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "dmac"
+                    },
+                    {
+                      "start_bit": 16,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "smac"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 9,
+                      "field_name": "--padding_9_15--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870939
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 90 ], "vpns": [ 0 ] },
+              { "memory_units": [ 91 ], "vpns": [ 1 ] },
+              { "memory_units": [ 92 ], "vpns": [ 2 ] }
+            ],
+            "spare_bank_memory_unit": 92
+          }
+        }
+      ],
+      "actions": [
+        {
+          "name": "NoAction",
+          "handle": 536870940,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": []
+        },
+        {
+          "name": "next.output",
+          "handle": 536870936,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "port_num",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 9
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "action_param", "name": "port_num" },
+                { "type": "phv", "name": "H1" }
+              ]
+            }
+          ]
+        },
+        {
+          "name": "next.set_vlan_output",
+          "handle": 536870937,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "new_vlan_id",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 12
+            },
+            {
+              "name": "port_num",
+              "start_bit": 12,
+              "position": 1,
+              "bit_width": 9
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "vlan_tag.vlan_id" },
+              "src": [
+                { "type": "action_param", "name": "new_vlan_id" },
+                { "type": "phv", "name": "H3" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "fabric_metadata.pop_vlan_at_egress" },
+              "src": [
+                { "type": "immmediate", "name": "0" },
+                { "type": "phv", "name": "B8" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "action_param", "name": "port_num" },
+                { "type": "phv", "name": "H1" }
+              ]
+            }
+          ]
+        },
+        {
+          "name": "next.l3_routing",
+          "handle": 536870938,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "port_num",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 9
+            },
+            { "name": "smac", "start_bit": 9, "position": 1, "bit_width": 48 },
+            { "name": "dmac", "start_bit": 57, "position": 2, "bit_width": 48 }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "action_param", "name": "port_num" },
+                { "type": "phv", "name": "H1" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "dmac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "smac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "dmac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "smac.16-47" } ]
+            }
+          ]
+        },
+        {
+          "name": "next.mpls_routing_v4",
+          "handle": 536870939,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "port_num",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 9
+            },
+            { "name": "smac", "start_bit": 9, "position": 1, "bit_width": 48 },
+            { "name": "dmac", "start_bit": 57, "position": 2, "bit_width": 48 },
+            {
+              "name": "label",
+              "start_bit": 105,
+              "position": 3,
+              "bit_width": 20
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "action_param", "name": "port_num" },
+                { "type": "phv", "name": "H1" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.$valid" },
+              "src": [
+                { "type": "immmediate", "name": "1" },
+                { "type": "phv", "name": "B7" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "vlan_tag.ether_type" },
+              "src": [ { "immediate": "34887" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.ttl" },
+              "src": [ { "immediate": "64" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.label.4-19" },
+              "src": [ { "type": "action_param", "name": "label.4-19" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "dmac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "smac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "dmac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "smac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "B2" },
+              "src": [ { "type": "immediate", "name": "$data0" } ]
+            }
+          ]
+        }
+      ],
+      "how_referenced": "direct"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777230,
+      "name": "tbl_act_2",
+      "table_type": "match",
+      "size": 1,
+      "preferred_match_type": "exact",
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 7,
+            "size": 1,
+            "stage_table_type": "match_with_no_key",
+            "logical_table_id": 1,
+            "has_attached_gateway": true,
+            "memory_resource_allocation": null,
+            "default_next_table": 255,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 0,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 0
+              }
+            ],
+            "result_physical_buses": [ 0 ],
+            "action_format": [
+              {
+                "action_name": "act_2",
+                "action_handle": 536870941,
+                "table_name": "next_hashed",
+                "next_table": 0,
+                "next_table_full": 114,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 64,
+                "immediate_fields": []
+              }
+            ],
+            "hash_functions": []
+          }
+        ],
+        "match_type": "match_with_no_key",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "act_2",
+          "handle": 536870941,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "DirectAluPrimitive",
+              "operation": "add",
+              "dest": { "type": "phv", "name": "ipv4.ttl" },
+              "src": [
+                { "type": "immmediate", "name": "255" },
+                { "type": "phv", "name": "B4" }
+              ]
+            }
+          ]
+        }
+      ],
+      "default_action_handle": 536870941,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "performs_hash_action": false,
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": []
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777231,
+      "name": "next.hashed",
+      "table_type": "match",
+      "size": 3072,
+      "action_data_table_refs": [
+        {
+          "how_referenced": "indirect",
+          "handle": 33554434,
+          "name": "next.ecmp_selector"
+        }
+      ],
+      "selection_table_refs": [
+        {
+          "how_referenced": "indirect",
+          "handle": 50331649,
+          "name": "next.ecmp_selector"
+        }
+      ],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 67108874,
+          "name": "next.hashed_counter"
+        }
+      ],
+      "stateful_table_refs": [],
+      "default_selector_mask": 0,
+      "default_selector_value": 0,
+      "default_action_handle": 0,
+      "action_profile": "next.ecmp_selector",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "fabric_metadata.next_id",
+          "position": 0,
+          "match_type": "exact",
+          "start_bit": 0,
+          "bit_width": 32,
+          "bit_width_full": 32,
+          "is_valid": false,
+          "instance_name": "fabric_metadata",
+          "field_name": "next_id"
+        }
+      ],
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 7,
+            "size": 3072,
+            "stage_table_type": "hash_match",
+            "logical_table_id": 2,
+            "has_attached_gateway": false,
+            "hash_functions": [
+              {
+                "hash_bits": [
+                  {
+                    "hash_bit": 0,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 1,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 2,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 3,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 4,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 5,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 6,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 7,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 8,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 9,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 10,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 11,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 12,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 13,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 14,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 15,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 16,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 17,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 18,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 19,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 20,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 21,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 22,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 23,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 24,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 25,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 26,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 27,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 28,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 29,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "action_format": [
+              {
+                "action_name": "NoAction",
+                "action_handle": 536870945,
+                "table_name": "tbl_act_13",
+                "next_table": 0,
+                "next_table_full": 128,
+                "vliw_instruction": 0,
+                "vliw_instruction_full": 67,
+                "immediate_fields": []
+              },
+              {
+                "action_name": "next.l3_routing",
+                "action_handle": 536870942,
+                "table_name": "tbl_act_13",
+                "next_table": 0,
+                "next_table_full": 128,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 65,
+                "immediate_fields": []
+              },
+              {
+                "action_name": "next.mpls_routing_v4",
+                "action_handle": 536870943,
+                "table_name": "tbl_act_13",
+                "next_table": 0,
+                "next_table_full": 128,
+                "vliw_instruction": 2,
+                "vliw_instruction_full": 66,
+                "immediate_fields": []
+              },
+              {
+                "action_name": "next.mpls_routing_v6",
+                "action_handle": 536870944,
+                "table_name": "tbl_act_13",
+                "next_table": 0,
+                "next_table_full": 128,
+                "vliw_instruction": 3,
+                "vliw_instruction_full": 68,
+                "immediate_fields": []
+              }
+            ],
+            "result_physical_buses": [ 14 ],
+            "pack_format": [
+              {
+                "memory_word_width": 128,
+                "table_word_width": 128,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1
+              }
+            ],
+            "memory_resource_allocation": null,
+            "ways": [
+              {
+                "stage_number": 7,
+                "way_number": 0,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "start_bit": 7,
+                            "enable_pfe": true,
+                            "field_width": 10,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "sel_ptr",
+                            "lsb_mem_word_offset": 2,
+                            "field_name": "meter_addr",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 5,
+                            "enable_pfe": false,
+                            "field_width": 11,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "adt_ptr",
+                            "lsb_mem_word_offset": 13,
+                            "field_name": "action_addr",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 42,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 24,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 40,
+                            "field_name": "--padding_40_41--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 64,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 48,
+                            "field_name": "--padding_48_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 0,
+                  "hash_entry_bit_hi": 9,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
+                }
+              },
+              {
+                "stage_number": 7,
+                "way_number": 1,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "start_bit": 7,
+                            "enable_pfe": true,
+                            "field_width": 10,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "sel_ptr",
+                            "lsb_mem_word_offset": 2,
+                            "field_name": "meter_addr",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 5,
+                            "enable_pfe": false,
+                            "field_width": 11,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "adt_ptr",
+                            "lsb_mem_word_offset": 13,
+                            "field_name": "action_addr",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 42,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 24,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 40,
+                            "field_name": "--padding_40_41--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 64,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 48,
+                            "field_name": "--padding_48_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 10,
+                  "hash_entry_bit_hi": 19,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 87 ], "vpns": [ 1 ] } ]
+                }
+              },
+              {
+                "stage_number": 7,
+                "way_number": 2,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "start_bit": 7,
+                            "enable_pfe": true,
+                            "field_width": 10,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "sel_ptr",
+                            "lsb_mem_word_offset": 2,
+                            "field_name": "meter_addr",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 5,
+                            "enable_pfe": false,
+                            "field_width": 11,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "adt_ptr",
+                            "lsb_mem_word_offset": 13,
+                            "field_name": "action_addr",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 42,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 24,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 32,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 2,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 40,
+                            "field_name": "--padding_40_41--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 64,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 48,
+                            "field_name": "--padding_48_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 20,
+                  "hash_entry_bit_hi": 29,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 88 ], "vpns": [ 2 ] } ]
+                }
+              }
+            ]
+          }
+        ],
+        "match_type": "exact",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "NoAction",
+          "handle": 536870945,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": []
+        },
+        {
+          "name": "next.l3_routing",
+          "handle": 536870942,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "port_num",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 9
+            },
+            { "name": "smac", "start_bit": 9, "position": 1, "bit_width": 48 },
+            { "name": "dmac", "start_bit": 57, "position": 2, "bit_width": 48 }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "action_param", "name": "port_num" },
+                { "type": "phv", "name": "H1" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "dmac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "smac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "dmac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "smac.16-47" } ]
+            }
+          ]
+        },
+        {
+          "name": "next.mpls_routing_v4",
+          "handle": 536870943,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "port_num",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 9
+            },
+            { "name": "smac", "start_bit": 9, "position": 1, "bit_width": 48 },
+            { "name": "dmac", "start_bit": 57, "position": 2, "bit_width": 48 },
+            {
+              "name": "label",
+              "start_bit": 105,
+              "position": 3,
+              "bit_width": 20
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "action_param", "name": "port_num" },
+                { "type": "phv", "name": "H1" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.$valid" },
+              "src": [
+                { "type": "immmediate", "name": "1" },
+                { "type": "phv", "name": "B7" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "vlan_tag.ether_type" },
+              "src": [ { "immediate": "34887" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.ttl" },
+              "src": [ { "immediate": "64" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.label.4-19" },
+              "src": [ { "type": "action_param", "name": "label.4-19" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "dmac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "smac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "dmac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "smac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "B2" },
+              "src": [ { "type": "action_param", "name": "$data0" } ]
+            }
+          ]
+        },
+        {
+          "name": "next.mpls_routing_v6",
+          "handle": 536870944,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "port_num",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 9
+            },
+            { "name": "smac", "start_bit": 9, "position": 1, "bit_width": 48 },
+            { "name": "dmac", "start_bit": 57, "position": 2, "bit_width": 48 },
+            {
+              "name": "label",
+              "start_bit": 105,
+              "position": 3,
+              "bit_width": 20
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "action_param", "name": "port_num" },
+                { "type": "phv", "name": "H1" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.$valid" },
+              "src": [
+                { "type": "immmediate", "name": "1" },
+                { "type": "phv", "name": "B7" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "vlan_tag.ether_type" },
+              "src": [ { "immediate": "34887" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.ttl" },
+              "src": [ { "immediate": "64" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.label.4-19" },
+              "src": [ { "type": "action_param", "name": "label.4-19" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "dmac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "smac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "dmac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "smac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "B2" },
+              "src": [ { "type": "action_param", "name": "$data0" } ]
+            }
+          ]
+        }
+      ]
+    },
+    {
+      "direction": "ingress",
+      "handle": 50331649,
+      "name": "next.ecmp_selector",
+      "table_type": "selection",
+      "size": 1024,
+      "selection_type": "fair",
+      "how_referenced": "indirect",
+      "max_port_pool_size": 120,
+      "bound_to_action_data_table_handle": 33554434,
+      "stage_tables": [
+        {
+          "stage_number": 7,
+          "size": 1024,
+          "stage_table_type": "selection",
+          "logical_table_id": 2,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [ { "memory_units": [ 90 ], "vpns": [ 0 ] } ],
+            "spare_bank_memory_unit": 91
+          },
+          "meter_alu_index": 3
+        }
+      ]
+    },
+    {
+      "direction": "ingress",
+      "handle": 33554434,
+      "name": "next.ecmp_selector",
+      "table_type": "action",
+      "size": 64,
+      "stage_tables": [
+        {
+          "stage_number": 7,
+          "size": 262144,
+          "stage_table_type": "action_data",
+          "logical_table_id": 2,
+          "pack_format": [
+            {
+              "memory_word_width": 128,
+              "table_word_width": 256,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 2,
+              "entries": [
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 256,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 1,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870945
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 256,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 2,
+              "entries": [
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 9,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 48,
+                      "field_name": "port_num"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "dmac"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 80,
+                      "field_name": "smac"
+                    },
+                    {
+                      "start_bit": 16,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 1,
+                      "msb_mem_word_idx": 1,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "dmac"
+                    },
+                    {
+                      "start_bit": 16,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 1,
+                      "msb_mem_word_idx": 1,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "smac"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 48,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_47--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 57,
+                      "field_name": "--padding_57_63--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 96,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 1,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "--padding_96_191--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870942
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 256,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 2,
+              "entries": [
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 3 } ],
+                      "lsb_mem_word_offset": 1,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 4,
+                      "field_name": "label"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 9,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 32,
+                      "field_name": "port_num"
+                    },
+                    {
+                      "start_bit": 4,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 48,
+                      "field_name": "label"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "dmac"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 80,
+                      "field_name": "smac"
+                    },
+                    {
+                      "start_bit": 16,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 1,
+                      "msb_mem_word_idx": 1,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "dmac"
+                    },
+                    {
+                      "start_bit": 16,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 1,
+                      "msb_mem_word_idx": 1,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "smac"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 24,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 8,
+                      "field_name": "--padding_8_31--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 41,
+                      "field_name": "--padding_41_47--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 96,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 1,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "--padding_96_191--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870943
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 256,
+              "entries_per_table_word": 1,
+              "number_memory_units_per_table_word": 2,
+              "entries": [
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 3,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "const_tuples": [ { "dest_start": 0, "value": 0, "dest_width": 3 } ],
+                      "lsb_mem_word_offset": 1,
+                      "field_name": "$constant0"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 1,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "constant",
+                      "const_tuples": [ { "dest_start": 0, "value": 1, "dest_width": 1 } ],
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "$constant1"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 4,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 4,
+                      "field_name": "label"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 9,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 32,
+                      "field_name": "port_num"
+                    },
+                    {
+                      "start_bit": 4,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 48,
+                      "field_name": "label"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "dmac"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 16,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 80,
+                      "field_name": "smac"
+                    },
+                    {
+                      "start_bit": 16,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 1,
+                      "msb_mem_word_idx": 1,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "dmac"
+                    },
+                    {
+                      "start_bit": 16,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 1,
+                      "msb_mem_word_idx": 1,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "smac"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 24,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 8,
+                      "field_name": "--padding_8_31--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 7,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 41,
+                      "field_name": "--padding_41_47--"
+                    },
+                    {
+                      "start_bit": 0,
+                      "field_width": 96,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 1,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "--padding_96_191--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870944
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [ { "memory_units": [ 89, 92 ], "vpns": [ 0 ] } ],
+            "spare_bank_memory_unit": [ 92, 89 ]
+          }
+        }
+      ],
+      "actions": [
+        {
+          "name": "NoAction",
+          "handle": 536870945,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": []
+        },
+        {
+          "name": "next.l3_routing",
+          "handle": 536870942,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "port_num",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 9
+            },
+            { "name": "smac", "start_bit": 9, "position": 1, "bit_width": 48 },
+            { "name": "dmac", "start_bit": 57, "position": 2, "bit_width": 48 }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "action_param", "name": "port_num" },
+                { "type": "phv", "name": "H1" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "dmac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "smac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "dmac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "smac.16-47" } ]
+            }
+          ]
+        },
+        {
+          "name": "next.mpls_routing_v4",
+          "handle": 536870943,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "port_num",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 9
+            },
+            { "name": "smac", "start_bit": 9, "position": 1, "bit_width": 48 },
+            { "name": "dmac", "start_bit": 57, "position": 2, "bit_width": 48 },
+            {
+              "name": "label",
+              "start_bit": 105,
+              "position": 3,
+              "bit_width": 20
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "action_param", "name": "port_num" },
+                { "type": "phv", "name": "H1" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.$valid" },
+              "src": [
+                { "type": "immmediate", "name": "1" },
+                { "type": "phv", "name": "B7" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "vlan_tag.ether_type" },
+              "src": [ { "immediate": "34887" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.ttl" },
+              "src": [ { "immediate": "64" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.label.4-19" },
+              "src": [ { "type": "action_param", "name": "label.4-19" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "dmac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "smac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "dmac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "smac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "B2" },
+              "src": [ { "type": "action_param", "name": "$data0" } ]
+            }
+          ]
+        },
+        {
+          "name": "next.mpls_routing_v6",
+          "handle": 536870944,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            {
+              "name": "port_num",
+              "start_bit": 0,
+              "position": 0,
+              "bit_width": 9
+            },
+            { "name": "smac", "start_bit": 9, "position": 1, "bit_width": 48 },
+            { "name": "dmac", "start_bit": 57, "position": 2, "bit_width": 48 },
+            {
+              "name": "label",
+              "start_bit": 105,
+              "position": 3,
+              "bit_width": 20
+            }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.ucast_egress_port" },
+              "src": [
+                { "type": "action_param", "name": "port_num" },
+                { "type": "phv", "name": "H1" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.$valid" },
+              "src": [
+                { "type": "immmediate", "name": "1" },
+                { "type": "phv", "name": "B7" }
+              ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "vlan_tag.ether_type" },
+              "src": [ { "immediate": "34887" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.ttl" },
+              "src": [ { "immediate": "64" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "mpls.label.4-19" },
+              "src": [ { "type": "action_param", "name": "label.4-19" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "dmac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.0-15" },
+              "src": [ { "type": "action_param", "name": "smac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.dst_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "dmac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "smac.16-47" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "B2" },
+              "src": [ { "type": "action_param", "name": "$data0" } ]
+            }
+          ]
+        }
+      ],
+      "how_referenced": "indirect"
+    },
+    {
+      "direction": "ingress",
+      "handle": 67108874,
+      "name": "next.hashed_counter",
+      "table_type": "statistics",
+      "size": 0,
+      "stage_tables": [
+        {
+          "stage_number": 7,
+          "size": 4096,
+          "stage_table_type": "statistics",
+          "logical_table_id": 2,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 78 ], "vpns": [ 0 ] },
+              { "memory_units": [ 79 ], "vpns": [ 1 ] },
+              { "memory_units": [ 80 ], "vpns": [ 2 ] }
+            ],
+            "spare_bank_memory_unit": 80
+          },
+          "stats_alu_index": 3
+        }
+      ],
+      "how_referenced": "direct",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 36,
+      "packet_counter_resolution": 28,
+      "statistics_type": "packets_and_bytes"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777232,
+      "name": "tbl_act_5",
+      "table_type": "match",
+      "size": 1,
+      "preferred_match_type": "exact",
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 8,
+            "size": 1,
+            "stage_table_type": "match_with_no_key",
+            "logical_table_id": 0,
+            "has_attached_gateway": true,
+            "memory_resource_allocation": null,
+            "default_next_table": 255,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 0,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 0
+              }
+            ],
+            "result_physical_buses": [ 1 ],
+            "action_format": [
+              {
+                "action_name": "act_5",
+                "action_handle": 536870946,
+                "table_name": "tbl_act_11",
+                "next_table": 0,
+                "next_table_full": 129,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 64,
+                "immediate_fields": []
+              }
+            ],
+            "hash_functions": []
+          }
+        ],
+        "match_type": "match_with_no_key",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "act_5",
+          "handle": 536870946,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.ether_type" },
+              "src": [ { "type": "phv", "name": "H8" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "vlan_tag.$valid" },
+              "src": [
+                { "type": "immmediate", "name": "0" },
+                { "type": "phv", "name": "B8" }
+              ]
+            }
+          ]
+        }
+      ],
+      "default_action_handle": 536870946,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "performs_hash_action": false,
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [],
+      "stateful_table_refs": []
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777233,
+      "name": "tbl_act_3",
+      "table_type": "match",
+      "size": 512,
+      "preferred_match_type": "exact",
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 8,
+            "size": 1,
+            "stage_table_type": "match_with_no_key",
+            "logical_table_id": 1,
+            "has_attached_gateway": true,
+            "memory_resource_allocation": null,
+            "default_next_table": 255,
+            "pack_format": [
+              {
+                "table_word_width": 0,
+                "memory_word_width": 0,
+                "entries_per_table_word": 0,
+                "number_memory_units_per_table_word": 0
+              }
+            ],
+            "result_physical_buses": [ 0 ],
+            "action_format": [
+              {
+                "action_name": "act_3",
+                "action_handle": 536870947,
+                "table_name": "next_broadcast",
+                "next_table": 0,
+                "next_table_full": 130,
+                "vliw_instruction": 0,
+                "vliw_instruction_full": 65,
+                "immediate_fields": []
+              }
+            ],
+            "hash_functions": []
+          }
+        ],
+        "match_type": "match_with_no_key",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "act_3",
+          "handle": 536870947,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "is_action_meter_color_aware": false,
+          "primitives": []
+        }
+      ],
+      "default_action_handle": 536870947,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [],
+      "performs_hash_action": true,
+      "action_data_table_refs": [],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "indirect",
+          "handle": 67108875,
+          "name": "port_counters_control.egress_port_counter"
+        }
+      ],
+      "stateful_table_refs": []
+    },
+    {
+      "direction": "ingress",
+      "handle": 67108875,
+      "name": "port_counters_control.egress_port_counter",
+      "table_type": "statistics",
+      "size": 511,
+      "stage_tables": [
+        {
+          "stage_number": 8,
+          "size": 4096,
+          "stage_table_type": "statistics",
+          "logical_table_id": 1,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 4,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 54 ], "vpns": [ 0 ] },
+              { "memory_units": [ 55 ], "vpns": [ 1 ] }
+            ],
+            "spare_bank_memory_unit": 55
+          },
+          "stats_alu_index": 2
+        }
+      ],
+      "how_referenced": "indirect",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 0,
+      "packet_counter_resolution": 32,
+      "statistics_type": "packets"
+    },
+    {
+      "direction": "ingress",
+      "handle": 16777234,
+      "name": "next.broadcast",
+      "table_type": "match",
+      "size": 3072,
+      "action_data_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 33554435,
+          "name": "next_broadcast$action"
+        }
+      ],
+      "selection_table_refs": [],
+      "meter_table_refs": [],
+      "statistics_table_refs": [
+        {
+          "how_referenced": "direct",
+          "handle": 67108876,
+          "name": "next.broadcast_counter"
+        }
+      ],
+      "stateful_table_refs": [],
+      "default_action_handle": 0,
+      "action_profile": "",
+      "default_next_table_mask": 0,
+      "ap_bind_indirect_res_to_match": [],
+      "is_resource_controllable": true,
+      "uses_range": false,
+      "match_key_fields": [
+        {
+          "name": "fabric_metadata.next_id",
+          "position": 0,
+          "match_type": "exact",
+          "start_bit": 0,
+          "bit_width": 32,
+          "bit_width_full": 32,
+          "is_valid": false,
+          "instance_name": "fabric_metadata",
+          "field_name": "next_id"
+        }
+      ],
+      "match_attributes": {
+        "stage_tables": [
+          {
+            "stage_number": 8,
+            "size": 3072,
+            "stage_table_type": "hash_match",
+            "logical_table_id": 2,
+            "has_attached_gateway": false,
+            "hash_functions": [
+              {
+                "hash_bits": [
+                  {
+                    "hash_bit": 0,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 1,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 2,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 3,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 4,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 5,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 6,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 7,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 8,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 9,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 10,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 11,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 12,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 13,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 14,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 15,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 16,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 17,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 18,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 19,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 20,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 0,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 21,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 1,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 22,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 2,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 23,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 3,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 24,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 4,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 25,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 5,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 26,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 28,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 6,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 27,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 23,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 7,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 28,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 16,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 21,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 29,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 30,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 31,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 8,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 10,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 11,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 13,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 14,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  },
+                  {
+                    "hash_bit": 29,
+                    "seed": 0,
+                    "bits_to_xor": [
+                      {
+                        "field_bit": 17,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 18,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 19,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 20,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 22,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 24,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 25,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 26,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 27,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 9,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 12,
+                        "field_name": "fabric_metadata.next_id"
+                      },
+                      {
+                        "field_bit": 15,
+                        "field_name": "fabric_metadata.next_id"
+                      }
+                    ]
+                  }
+                ]
+              }
+            ],
+            "action_format": [
+              {
+                "action_name": "NoAction",
+                "action_handle": 536870949,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 255,
+                "vliw_instruction": 0,
+                "vliw_instruction_full": 65,
+                "immediate_fields": []
+              },
+              {
+                "action_name": "next.set_mcast_group",
+                "action_handle": 536870948,
+                "table_name": "--END_OF_PIPELINE--",
+                "next_table": 0,
+                "next_table_full": 255,
+                "vliw_instruction": 1,
+                "vliw_instruction_full": 66,
+                "immediate_fields": [
+                  {
+                    "param_name": "gid",
+                    "param_type": "parameter",
+                    "param_shift": 0,
+                    "dest_start": 16,
+                    "dest_width": 16
+                  },
+                  {
+                    "param_name": "smac",
+                    "param_type": "parameter",
+                    "param_shift": 0,
+                    "dest_start": 0,
+                    "dest_width": 16
+                  }
+                ]
+              }
+            ],
+            "result_physical_buses": [ 14 ],
+            "pack_format": [
+              {
+                "memory_word_width": 128,
+                "table_word_width": 128,
+                "entries_per_table_word": 1,
+                "number_memory_units_per_table_word": 1
+              }
+            ],
+            "memory_resource_allocation": null,
+            "ways": [
+              {
+                "stage_number": 8,
+                "way_number": 0,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 32,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 34,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 48,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 33,
+                            "field_name": "--padding_33_33--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 56,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 56,
+                            "field_name": "--padding_56_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 0,
+                  "hash_entry_bit_hi": 9,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 86 ], "vpns": [ 0 ] } ]
+                }
+              },
+              {
+                "stage_number": 8,
+                "way_number": 1,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 32,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 34,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 48,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 33,
+                            "field_name": "--padding_33_33--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 56,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 56,
+                            "field_name": "--padding_56_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 10,
+                  "hash_entry_bit_hi": 19,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 87 ], "vpns": [ 1 ] } ]
+                }
+              },
+              {
+                "stage_number": 8,
+                "way_number": 2,
+                "stage_table_type": "hash_way",
+                "size": 1024,
+                "pack_format": [
+                  {
+                    "memory_word_width": 128,
+                    "table_word_width": 128,
+                    "entries_per_table_word": 1,
+                    "number_memory_units_per_table_word": 1,
+                    "entries": [
+                      {
+                        "entry_number": 0,
+                        "fields": [
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "instr",
+                            "lsb_mem_word_offset": 0,
+                            "field_name": "action",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 32,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "immediate",
+                            "lsb_mem_word_offset": 1,
+                            "field_name": "immediate",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 4,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "version",
+                            "lsb_mem_word_offset": 112,
+                            "field_name": "version",
+                            "match_mode": "s1q0"
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 34,
+                            "start_bit": 10,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 6
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 40,
+                            "start_bit": 16,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "field_name": "fabric_metadata.next_id",
+                            "source": "spec",
+                            "lsb_mem_word_offset": 48,
+                            "start_bit": 24,
+                            "immediate_name": "",
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "match_mode": "unused",
+                            "enable_pfe": false,
+                            "field_width": 8
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 1,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 33,
+                            "field_name": "--padding_33_33--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 56,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 56,
+                            "field_name": "--padding_56_111--",
+                            "match_mode": "unused"
+                          },
+                          {
+                            "start_bit": 0,
+                            "enable_pfe": false,
+                            "field_width": 12,
+                            "lsb_mem_word_idx": 0,
+                            "msb_mem_word_idx": 0,
+                            "source": "zero",
+                            "lsb_mem_word_offset": 116,
+                            "field_name": "--padding_116_127--",
+                            "match_mode": "unused"
+                          }
+                        ]
+                      }
+                    ]
+                  }
+                ],
+                "memory_resource_allocation": {
+                  "hash_function_id": 0,
+                  "hash_entry_bit_lo": 20,
+                  "hash_entry_bit_hi": 29,
+                  "number_entry_bits": 10,
+                  "hash_select_bit_hi": 40,
+                  "hash_select_bit_lo": 40,
+                  "number_select_bits": 0,
+                  "memory_units_and_vpns": [ { "memory_units": [ 88 ], "vpns": [ 2 ] } ]
+                }
+              }
+            ]
+          }
+        ],
+        "match_type": "exact",
+        "uses_dynamic_key_masks": false
+      },
+      "actions": [
+        {
+          "name": "NoAction",
+          "handle": 536870949,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": []
+        },
+        {
+          "name": "next.set_mcast_group",
+          "handle": 536870948,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            { "name": "gid", "start_bit": 0, "position": 0, "bit_width": 16 },
+            { "name": "smac", "start_bit": 16, "position": 1, "bit_width": 48 }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.mcast_grp_a" },
+              "src": [ { "type": "immediate", "name": "gid" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.0-15" },
+              "src": [ { "type": "immediate", "name": "smac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "smac.16-47" } ]
+            }
+          ]
+        }
+      ]
+    },
+    {
+      "direction": "ingress",
+      "handle": 67108876,
+      "name": "next.broadcast_counter",
+      "table_type": "statistics",
+      "size": 0,
+      "stage_tables": [
+        {
+          "stage_number": 8,
+          "size": 4096,
+          "stage_table_type": "statistics",
+          "logical_table_id": 2,
+          "pack_format": [
+            {
+              "table_word_width": 128,
+              "memory_word_width": 128,
+              "entries_per_table_word": 2,
+              "number_memory_units_per_table_word": 1
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [
+              { "memory_units": [ 78 ], "vpns": [ 0 ] },
+              { "memory_units": [ 79 ], "vpns": [ 1 ] },
+              { "memory_units": [ 80 ], "vpns": [ 2 ] }
+            ],
+            "spare_bank_memory_unit": 80
+          },
+          "stats_alu_index": 3
+        }
+      ],
+      "how_referenced": "direct",
+      "enable_pfe": false,
+      "pfe_bit_position": 0,
+      "byte_counter_resolution": 36,
+      "packet_counter_resolution": 28,
+      "statistics_type": "packets_and_bytes"
+    },
+    {
+      "direction": "ingress",
+      "handle": 33554435,
+      "name": "next_broadcast$action",
+      "table_type": "action",
+      "size": 4096,
+      "stage_tables": [
+        {
+          "stage_number": 8,
+          "size": 4096,
+          "stage_table_type": "action_data",
+          "logical_table_id": 2,
+          "pack_format": [
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 4,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 3,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "--padding_0_31--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 2,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "--padding_0_31--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 32,
+                      "field_name": "--padding_0_31--"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 0,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "zero",
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "--padding_0_31--"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870949
+            },
+            {
+              "memory_word_width": 128,
+              "table_word_width": 128,
+              "entries_per_table_word": 4,
+              "number_memory_units_per_table_word": 1,
+              "entries": [
+                {
+                  "entry_number": 3,
+                  "fields": [
+                    {
+                      "start_bit": 16,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 96,
+                      "field_name": "smac"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 2,
+                  "fields": [
+                    {
+                      "start_bit": 16,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 64,
+                      "field_name": "smac"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 1,
+                  "fields": [
+                    {
+                      "start_bit": 16,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 32,
+                      "field_name": "smac"
+                    }
+                  ]
+                },
+                {
+                  "entry_number": 0,
+                  "fields": [
+                    {
+                      "start_bit": 16,
+                      "field_width": 32,
+                      "lsb_mem_word_idx": 0,
+                      "msb_mem_word_idx": 0,
+                      "source": "spec",
+                      "lsb_mem_word_offset": 0,
+                      "field_name": "smac"
+                    }
+                  ]
+                }
+              ],
+              "action_handle": 536870948
+            }
+          ],
+          "memory_resource_allocation": {
+            "memory_type": "sram",
+            "memory_units_and_vpns": [ { "memory_units": [ 90 ], "vpns": [ 0 ] } ],
+            "spare_bank_memory_unit": 90
+          }
+        }
+      ],
+      "actions": [
+        {
+          "name": "NoAction",
+          "handle": 536870949,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": []
+        },
+        {
+          "name": "next.set_mcast_group",
+          "handle": 536870948,
+          "indirect_resources": [],
+          "allowed_as_default_action": true,
+          "disallowed_as_default_action_reason": "",
+          "p4_parameters": [
+            { "name": "gid", "start_bit": 0, "position": 0, "bit_width": 16 },
+            { "name": "smac", "start_bit": 16, "position": 1, "bit_width": 48 }
+          ],
+          "override_meter_addr": false,
+          "override_meter_addr_pfe": false,
+          "override_meter_full_addr": 0,
+          "override_stat_addr": false,
+          "override_stat_addr_pfe": false,
+          "override_stat_full_addr": 0,
+          "override_stateful_addr": false,
+          "override_stateful_addr_pfe": false,
+          "override_stateful_full_addr": 0,
+          "primitives": [
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ig_intr_md_for_tm.mcast_grp_a" },
+              "src": [ { "type": "immediate", "name": "gid" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.0-15" },
+              "src": [ { "type": "immediate", "name": "smac.0-15" } ]
+            },
+            {
+              "name": "ModifyFieldPrimitive",
+              "dest": { "type": "phv", "name": "ethernet.src_addr.16-47" },
+              "src": [ { "type": "action_param", "name": "smac.16-47" } ]
+            }
+          ]
+        }
+      ],
+      "how_referenced": "direct"
+    }
+  ],
+  "configuration_cache": [
+    {
+      "fully_qualified_name": "pmarb.ebp18_reg.ebp_reg[0].epb_prsr_port_regs.chnl_ctrl[0]",
+      "name": "parser0_chnl_ctrl_0",
+      "value": "00a41fff"
+    },
+    {
+      "fully_qualified_name": "pmarb.ebp18_reg.ebp_reg[0].epb_prsr_port_regs.chnl_ctrl[1]",
+      "name": "parser0_chnl_ctrl_1",
+      "value": "00a41fff"
+    },
+    {
+      "fully_qualified_name": "pmarb.ebp18_reg.ebp_reg[0].epb_prsr_port_regs.chnl_ctrl[2]",
+      "name": "parser0_chnl_ctrl_2",
+      "value": "00a41fff"
+    },
+    {
+      "fully_qualified_name": "pmarb.ebp18_reg.ebp_reg[0].epb_prsr_port_regs.chnl_ctrl[3]",
+      "name": "parser0_chnl_ctrl_3",
+      "value": "00a41fff"
+    },
+    {
+      "fully_qualified_name": "pmarb.ebp18_reg.ebp_reg[0].epb_prsr_port_regs.multi_threading",
+      "name": "parser0_multi_threading",
+      "value": "19522020"
+    },
+    {
+      "fully_qualified_name": "mau[0].dp.match_input_xbar_din_power_ctl",
+      "name": "stage_0_match_input_xbar_din_power_ctl",
+      "value": "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[1].dp.match_input_xbar_din_power_ctl",
+      "name": "stage_1_match_input_xbar_din_power_ctl",
+      "value": "0000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[2].dp.match_input_xbar_din_power_ctl",
+      "name": "stage_2_match_input_xbar_din_power_ctl",
+      "value": "0000000000000000000000000000000000000080000000010000000000000000000000280000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[2].dp.xbar_hash.hash.parity_group_mask",
+      "name": "stage_2_parity_group_mask",
+      "value": "00000001000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[3].dp.match_input_xbar_din_power_ctl",
+      "name": "stage_3_match_input_xbar_din_power_ctl",
+      "value": "0000000100000000000000000000000000000000000000000000000000000000000000200000001200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[3].dp.xbar_hash.hash.parity_group_mask",
+      "name": "stage_3_parity_group_mask",
+      "value": "00000003000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[4].dp.match_input_xbar_din_power_ctl",
+      "name": "stage_4_match_input_xbar_din_power_ctl",
+      "value": "00000009000000000000000000000000000000040000000000000000000000000000001c0000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[4].dp.xbar_hash.hash.parity_group_mask",
+      "name": "stage_4_parity_group_mask",
+      "value": "00000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[5].dp.match_input_xbar_din_power_ctl",
+      "name": "stage_5_match_input_xbar_din_power_ctl",
+      "value": "0000000f00000000000000000000000000000043000000000000000000000000000000680000001e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[6].dp.match_input_xbar_din_power_ctl",
+      "name": "stage_6_match_input_xbar_din_power_ctl",
+      "value": "0000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[6].dp.xbar_hash.hash.parity_group_mask",
+      "name": "stage_6_parity_group_mask",
+      "value": "00000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[7].dp.match_input_xbar_din_power_ctl",
+      "name": "stage_7_match_input_xbar_din_power_ctl",
+      "value": "00000013000000000000000000000000000000c0000000000000000000000000000000400000000e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[7].dp.xbar_hash.hash.parity_group_mask",
+      "name": "stage_7_parity_group_mask",
+      "value": "00000001000000000000000e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[8].dp.match_input_xbar_din_power_ctl",
+      "name": "stage_8_match_input_xbar_din_power_ctl",
+      "value": "0000001000000000000000000000000000000000000000010000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    },
+    {
+      "fully_qualified_name": "mau[8].dp.xbar_hash.hash.parity_group_mask",
+      "name": "stage_8_parity_group_mask",
+      "value": "00000001000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/pipelines/fabric-hw/src/main/resources/p4c-out/tofino/fabric/montana/fabric.p4info b/pipelines/fabric-hw/src/main/resources/p4c-out/tofino/fabric/montana/fabric.p4info
new file mode 100644
index 0000000..80e0880
--- /dev/null
+++ b/pipelines/fabric-hw/src/main/resources/p4c-out/tofino/fabric/montana/fabric.p4info
@@ -0,0 +1,740 @@
+tables {
+  preamble {
+    id: 33578399
+    name: "filtering.ingress_port_vlan"
+    alias: "ingress_port_vlan"
+  }
+  match_fields {
+    id: 1
+    name: "standard_metadata.ingress_port"
+    bitwidth: 9
+    match_type: EXACT
+  }
+  match_fields {
+    id: 2
+    name: "hdr.vlan_tag.is_valid"
+    bitwidth: 1
+    match_type: EXACT
+  }
+  match_fields {
+    id: 3
+    name: "hdr.vlan_tag.vlan_id"
+    bitwidth: 12
+    match_type: TERNARY
+  }
+  action_refs {
+    id: 16794505
+  }
+  action_refs {
+    id: 16782367
+  }
+  action_refs {
+    id: 16819938
+  }
+  action_refs {
+    id: 16826365
+  }
+  const_default_action_id: 16819938
+  direct_resource_ids: 302015144
+  size: 1024
+}
+tables {
+  preamble {
+    id: 33619540
+    name: "filtering.fwd_classifier"
+    alias: "fwd_classifier"
+  }
+  match_fields {
+    id: 1
+    name: "standard_metadata.ingress_port"
+    bitwidth: 9
+    match_type: EXACT
+  }
+  match_fields {
+    id: 2
+    name: "hdr.ethernet.dst_addr"
+    bitwidth: 48
+    match_type: EXACT
+  }
+  match_fields {
+    id: 3
+    name: "fabric_metadata.original_ether_type"
+    bitwidth: 16
+    match_type: EXACT
+  }
+  action_refs {
+    id: 16838162
+  }
+  const_default_action_id: 16838162
+  direct_resource_ids: 302033694
+  size: 1024
+}
+tables {
+  preamble {
+    id: 33569146
+    name: "forwarding.bridging"
+    alias: "bridging"
+  }
+  match_fields {
+    id: 1
+    name: "hdr.vlan_tag.vlan_id"
+    bitwidth: 12
+    match_type: EXACT
+  }
+  match_fields {
+    id: 2
+    name: "hdr.ethernet.dst_addr"
+    bitwidth: 48
+    match_type: TERNARY
+  }
+  action_refs {
+    id: 16829931
+  }
+  action_refs {
+    id: 16800567
+    annotations: "@defaultonly()"
+  }
+  direct_resource_ids: 302047449
+  size: 1024
+}
+tables {
+  preamble {
+    id: 33565386
+    name: "forwarding.mpls"
+    alias: "mpls"
+  }
+  match_fields {
+    id: 1
+    name: "hdr.mpls.label"
+    bitwidth: 20
+    match_type: EXACT
+  }
+  action_refs {
+    id: 16842717
+  }
+  action_refs {
+    id: 16800567
+    annotations: "@defaultonly()"
+  }
+  direct_resource_ids: 302001577
+  size: 1024
+}
+tables {
+  preamble {
+    id: 33589684
+    name: "forwarding.unicast_v4"
+    alias: "unicast_v4"
+  }
+  match_fields {
+    id: 1
+    name: "hdr.ipv4.dst_addr"
+    bitwidth: 32
+    match_type: LPM
+  }
+  action_refs {
+    id: 16829931
+  }
+  action_refs {
+    id: 16800567
+    annotations: "@defaultonly()"
+  }
+  direct_resource_ids: 302038636
+  size: 1024
+}
+tables {
+  preamble {
+    id: 33615204
+    name: "forwarding.multicast_v4"
+    alias: "multicast_v4"
+  }
+  match_fields {
+    id: 1
+    name: "hdr.vlan_tag.vlan_id"
+    bitwidth: 12
+    match_type: EXACT
+  }
+  match_fields {
+    id: 2
+    name: "hdr.ipv4.dst_addr"
+    bitwidth: 32
+    match_type: LPM
+  }
+  action_refs {
+    id: 16829931
+  }
+  action_refs {
+    id: 16800567
+    annotations: "@defaultonly()"
+  }
+  direct_resource_ids: 302009236
+  size: 1024
+}
+tables {
+  preamble {
+    id: 33587782
+    name: "forwarding.acl"
+    alias: "acl"
+  }
+  match_fields {
+    id: 1
+    name: "standard_metadata.ingress_port"
+    bitwidth: 9
+    match_type: TERNARY
+  }
+  match_fields {
+    id: 2
+    name: "fabric_metadata.ip_proto"
+    bitwidth: 8
+    match_type: TERNARY
+  }
+  match_fields {
+    id: 3
+    name: "fabric_metadata.l4_src_port"
+    bitwidth: 16
+    match_type: TERNARY
+  }
+  match_fields {
+    id: 4
+    name: "fabric_metadata.l4_dst_port"
+    bitwidth: 16
+    match_type: TERNARY
+  }
+  match_fields {
+    id: 5
+    name: "fabric_metadata.original_ether_type"
+    bitwidth: 16
+    match_type: TERNARY
+  }
+  match_fields {
+    id: 6
+    name: "hdr.ethernet.dst_addr"
+    bitwidth: 48
+    match_type: TERNARY
+  }
+  match_fields {
+    id: 7
+    name: "hdr.ethernet.src_addr"
+    bitwidth: 48
+    match_type: TERNARY
+  }
+  match_fields {
+    id: 8
+    name: "hdr.vlan_tag.vlan_id"
+    bitwidth: 12
+    match_type: TERNARY
+  }
+  match_fields {
+    id: 9
+    name: "hdr.ipv4.src_addr"
+    bitwidth: 32
+    match_type: TERNARY
+  }
+  match_fields {
+    id: 10
+    name: "hdr.ipv4.dst_addr"
+    bitwidth: 32
+    match_type: TERNARY
+  }
+  match_fields {
+    id: 11
+    name: "hdr.icmp.icmp_type"
+    bitwidth: 8
+    match_type: TERNARY
+  }
+  match_fields {
+    id: 12
+    name: "hdr.icmp.icmp_code"
+    bitwidth: 8
+    match_type: TERNARY
+  }
+  action_refs {
+    id: 16829931
+  }
+  action_refs {
+    id: 16805452
+  }
+  action_refs {
+    id: 16815978
+  }
+  action_refs {
+    id: 16819938
+  }
+  const_default_action_id: 16819938
+  direct_resource_ids: 302000008
+  size: 256
+}
+tables {
+  preamble {
+    id: 33615740
+    name: "next.simple"
+    alias: "simple"
+  }
+  match_fields {
+    id: 1
+    name: "fabric_metadata.next_id"
+    bitwidth: 32
+    match_type: EXACT
+  }
+  action_refs {
+    id: 16818315
+  }
+  action_refs {
+    id: 16837690
+  }
+  action_refs {
+    id: 16804266
+  }
+  action_refs {
+    id: 16841192
+  }
+  action_refs {
+    id: 16800567
+    annotations: "@defaultonly()"
+  }
+  direct_resource_ids: 301991179
+  size: 1024
+}
+tables {
+  preamble {
+    id: 33569488
+    name: "next.hashed"
+    alias: "hashed"
+  }
+  match_fields {
+    id: 1
+    name: "fabric_metadata.next_id"
+    bitwidth: 32
+    match_type: EXACT
+  }
+  action_refs {
+    id: 16804266
+  }
+  action_refs {
+    id: 16841192
+  }
+  action_refs {
+    id: 16788519
+  }
+  action_refs {
+    id: 16800567
+    annotations: "@defaultonly()"
+  }
+  implementation_id: 285225078
+  direct_resource_ids: 301993193
+  size: 1024
+}
+tables {
+  preamble {
+    id: 33608545
+    name: "next.broadcast"
+    alias: "broadcast"
+  }
+  match_fields {
+    id: 1
+    name: "fabric_metadata.next_id"
+    bitwidth: 32
+    match_type: EXACT
+  }
+  action_refs {
+    id: 16778974
+  }
+  action_refs {
+    id: 16800567
+    annotations: "@defaultonly()"
+  }
+  direct_resource_ids: 301995093
+  size: 1024
+}
+actions {
+  preamble {
+    id: 16819938
+    name: "nop"
+    alias: "nop"
+  }
+}
+actions {
+  preamble {
+    id: 16800567
+    name: "NoAction"
+    alias: "NoAction"
+  }
+}
+actions {
+  preamble {
+    id: 16826365
+    name: "filtering.drop"
+    alias: "filtering.drop"
+  }
+}
+actions {
+  preamble {
+    id: 16782367
+    name: "filtering.set_vlan"
+    alias: "set_vlan"
+  }
+  params {
+    id: 1
+    name: "new_vlan_id"
+    bitwidth: 12
+  }
+}
+actions {
+  preamble {
+    id: 16794505
+    name: "filtering.push_internal_vlan"
+    alias: "push_internal_vlan"
+  }
+  params {
+    id: 1
+    name: "new_vlan_id"
+    bitwidth: 12
+  }
+}
+actions {
+  preamble {
+    id: 16838162
+    name: "filtering.set_forwarding_type"
+    alias: "set_forwarding_type"
+  }
+  params {
+    id: 1
+    name: "fwd_type"
+    bitwidth: 3
+  }
+}
+actions {
+  preamble {
+    id: 16815978
+    name: "forwarding.drop"
+    alias: "forwarding.drop"
+  }
+}
+actions {
+  preamble {
+    id: 16829931
+    name: "forwarding.set_next_id"
+    alias: "set_next_id"
+  }
+  params {
+    id: 1
+    name: "next_id"
+    bitwidth: 32
+  }
+}
+actions {
+  preamble {
+    id: 16842717
+    name: "forwarding.pop_mpls_and_next"
+    alias: "pop_mpls_and_next"
+  }
+  params {
+    id: 1
+    name: "next_id"
+    bitwidth: 32
+  }
+}
+actions {
+  preamble {
+    id: 16805452
+    name: "forwarding.duplicate_to_controller"
+    alias: "duplicate_to_controller"
+  }
+}
+actions {
+  preamble {
+    id: 16818315
+    name: "next.output"
+    alias: "output"
+  }
+  params {
+    id: 1
+    name: "port_num"
+    bitwidth: 9
+  }
+}
+actions {
+  preamble {
+    id: 16837690
+    name: "next.set_vlan_output"
+    alias: "set_vlan_output"
+  }
+  params {
+    id: 1
+    name: "new_vlan_id"
+    bitwidth: 12
+  }
+  params {
+    id: 2
+    name: "port_num"
+    bitwidth: 9
+  }
+}
+actions {
+  preamble {
+    id: 16804266
+    name: "next.l3_routing"
+    alias: "l3_routing"
+  }
+  params {
+    id: 1
+    name: "port_num"
+    bitwidth: 9
+  }
+  params {
+    id: 2
+    name: "smac"
+    bitwidth: 48
+  }
+  params {
+    id: 3
+    name: "dmac"
+    bitwidth: 48
+  }
+}
+actions {
+  preamble {
+    id: 16778974
+    name: "next.set_mcast_group"
+    alias: "set_mcast_group"
+  }
+  params {
+    id: 1
+    name: "gid"
+    bitwidth: 16
+  }
+  params {
+    id: 2
+    name: "smac"
+    bitwidth: 48
+  }
+}
+actions {
+  preamble {
+    id: 16841192
+    name: "next.mpls_routing_v4"
+    alias: "mpls_routing_v4"
+  }
+  params {
+    id: 1
+    name: "port_num"
+    bitwidth: 9
+  }
+  params {
+    id: 2
+    name: "smac"
+    bitwidth: 48
+  }
+  params {
+    id: 3
+    name: "dmac"
+    bitwidth: 48
+  }
+  params {
+    id: 4
+    name: "label"
+    bitwidth: 20
+  }
+}
+actions {
+  preamble {
+    id: 16788519
+    name: "next.mpls_routing_v6"
+    alias: "mpls_routing_v6"
+  }
+  params {
+    id: 1
+    name: "port_num"
+    bitwidth: 9
+  }
+  params {
+    id: 2
+    name: "smac"
+    bitwidth: 48
+  }
+  params {
+    id: 3
+    name: "dmac"
+    bitwidth: 48
+  }
+  params {
+    id: 4
+    name: "label"
+    bitwidth: 20
+  }
+}
+action_profiles {
+  preamble {
+    id: 285225078
+    name: "next.ecmp_selector"
+    alias: "ecmp_selector"
+  }
+  table_ids: 33569488
+  with_selector: true
+  size: 64
+}
+counters {
+  preamble {
+    id: 302025528
+    name: "port_counters_control.egress_port_counter"
+    alias: "egress_port_counter"
+  }
+  spec {
+    unit: PACKETS
+  }
+  size: 511
+}
+counters {
+  preamble {
+    id: 301999025
+    name: "port_counters_control.ingress_port_counter"
+    alias: "ingress_port_counter"
+  }
+  spec {
+    unit: PACKETS
+  }
+  size: 511
+}
+direct_counters {
+  preamble {
+    id: 302015144
+    name: "filtering.ingress_port_vlan_counter"
+    alias: "ingress_port_vlan_counter"
+  }
+  spec {
+    unit: BOTH
+  }
+  direct_table_id: 33578399
+}
+direct_counters {
+  preamble {
+    id: 302033694
+    name: "filtering.fwd_classifier_counter"
+    alias: "fwd_classifier_counter"
+  }
+  spec {
+    unit: BOTH
+  }
+  direct_table_id: 33619540
+}
+direct_counters {
+  preamble {
+    id: 302047449
+    name: "forwarding.bridging_counter"
+    alias: "bridging_counter"
+  }
+  spec {
+    unit: BOTH
+  }
+  direct_table_id: 33569146
+}
+direct_counters {
+  preamble {
+    id: 302001577
+    name: "forwarding.mpls_counter"
+    alias: "mpls_counter"
+  }
+  spec {
+    unit: BOTH
+  }
+  direct_table_id: 33565386
+}
+direct_counters {
+  preamble {
+    id: 302038636
+    name: "forwarding.unicast_v4_counter"
+    alias: "unicast_v4_counter"
+  }
+  spec {
+    unit: BOTH
+  }
+  direct_table_id: 33589684
+}
+direct_counters {
+  preamble {
+    id: 302009236
+    name: "forwarding.multicast_v4_counter"
+    alias: "multicast_v4_counter"
+  }
+  spec {
+    unit: BOTH
+  }
+  direct_table_id: 33615204
+}
+direct_counters {
+  preamble {
+    id: 302000008
+    name: "forwarding.acl_counter"
+    alias: "acl_counter"
+  }
+  spec {
+    unit: BOTH
+  }
+  direct_table_id: 33587782
+}
+direct_counters {
+  preamble {
+    id: 301991179
+    name: "next.simple_counter"
+    alias: "simple_counter"
+  }
+  spec {
+    unit: BOTH
+  }
+  direct_table_id: 33615740
+}
+direct_counters {
+  preamble {
+    id: 301993193
+    name: "next.hashed_counter"
+    alias: "hashed_counter"
+  }
+  spec {
+    unit: BOTH
+  }
+  direct_table_id: 33569488
+}
+direct_counters {
+  preamble {
+    id: 301995093
+    name: "next.broadcast_counter"
+    alias: "broadcast_counter"
+  }
+  spec {
+    unit: BOTH
+  }
+  direct_table_id: 33608545
+}
+controller_packet_metadata {
+  preamble {
+    id: 2868941301
+    name: "packet_in"
+    annotations: "@controller_header(\"packet_in\")"
+  }
+  metadata {
+    id: 1
+    name: "ingress_port"
+    bitwidth: 9
+  }
+  metadata {
+    id: 2
+    name: "_pad"
+    bitwidth: 7
+  }
+}
+controller_packet_metadata {
+  preamble {
+    id: 2868916615
+    name: "packet_out"
+    annotations: "@controller_header(\"packet_out\")"
+  }
+  metadata {
+    id: 1
+    name: "egress_port"
+    bitwidth: 9
+  }
+  metadata {
+    id: 2
+    name: "_pad"
+    bitwidth: 7
+  }
+}
diff --git a/pipelines/fabric-hw/src/main/resources/p4c-out/tofino/fabric/montana/tofino.bin b/pipelines/fabric-hw/src/main/resources/p4c-out/tofino/fabric/montana/tofino.bin
new file mode 100644
index 0000000..ae97e50
--- /dev/null
+++ b/pipelines/fabric-hw/src/main/resources/p4c-out/tofino/fabric/montana/tofino.bin
Binary files differ