Support for Tofino pipeconfs in ECMP app

Change-Id: I34c16f5f349c480f53b1bfc6a1fd91ec5a328ee3
diff --git a/tools/test/p4src/p4-14/p4c-out/tofino/ecmp/montara/name_lookup.c b/tools/test/p4src/p4-14/p4c-out/tofino/ecmp/montara/name_lookup.c
new file mode 100644
index 0000000..f6a37ba
--- /dev/null
+++ b/tools/test/p4src/p4-14/p4c-out/tofino/ecmp/montara/name_lookup.c
@@ -0,0 +1,3808 @@
+#include <stdio.h>
+#include <string.h>
+#include <stdlib.h>
+
+const char * p4_table_name_lookup(int pipe, int stage, int table_index)
+{
+  switch(stage) {
+    case 3:
+    {
+      switch(table_index) {
+        case 0:
+        {
+          return "ingress_port_count_table";
+        }
+        break;
+        case 1:
+        {
+          return "egress_port_count_table";
+        }
+        break;
+      }
+    }
+    break;
+    case 0:
+    {
+      switch(table_index) {
+        case 0:
+        {
+          return "ingress_pkt";
+        }
+        break;
+        case 1:
+        {
+          return "egress_pkt";
+        }
+        break;
+      }
+    }
+    break;
+    case 1:
+    {
+      switch(table_index) {
+        case 0:
+        {
+          return "table0";
+        }
+        break;
+      }
+    }
+    break;
+    case 2:
+    {
+      switch(table_index) {
+        case 0:
+        {
+          return "ecmp_group_table";
+        }
+        break;
+      }
+    }
+    break;
+
+  }
+
+  return "P4 table not valid";
+}
+
+const char * p4_phv_name_lookup (int pipe, int stage, int container)
+{
+  switch (stage) {
+    case 0:
+    {
+      switch(container) {
+        case 0 :
+        {
+          return "I [POV[31:0]]";
+        }
+        break;
+        case 1 :
+        {
+          return "I [ipv4.protocol, ipv4.hdrChecksum, ipv4.srcAddr[31:24]]";
+        }
+        break;
+        case 2 :
+        {
+          return "I [ipv4.dstAddr]";
+        }
+        break;
+        case 3 :
+        {
+          return "I [ethernet.dstAddr[39:8]]";
+        }
+        break;
+        case 4 :
+        {
+          return "I [ethernet.srcAddr[31:0]]";
+        }
+        break;
+        case 5 :
+        {
+          return "I [udp.srcPort, udp.dstPort]";
+        }
+        break;
+        case 64 :
+        {
+          return "I [ig_intr_md_for_tm.copy_to_cpu]";
+        }
+        break;
+        case 65 :
+        {
+          return "I [ipv4.srcAddr[23:16]]";
+        }
+        break;
+        case 66 :
+        {
+          return "I [ethernet.dstAddr[47:40]]";
+        }
+        break;
+        case 67 :
+        {
+          return "I [ethernet.srcAddr[39:32]]";
+        }
+        break;
+        case 68 :
+        {
+          return "I [POV[39:32]]";
+        }
+        break;
+        case 69 :
+        {
+          return "I [ig_intr_md_for_tm.drop_ctl]";
+        }
+        break;
+        case 80 :
+        {
+          return "E [ig_intr_md_for_tm.copy_to_cpu]";
+        }
+        break;
+        case 81 :
+        {
+          return "E [eg_intr_md._pad7, eg_intr_md.egress_cos]";
+        }
+        break;
+        case 82 :
+        {
+          return "E [POV[7:0]]";
+        }
+        break;
+        case 128 :
+        {
+          return "I [ig_intr_md.resubmit_flag, ig_intr_md._pad1, ig_intr_md._pad2, ig_intr_md._pad3, ig_intr_md.ingress_port]";
+        }
+        break;
+        case 129 :
+        {
+          return "I [packet_out_hdr.egress_port, packet_out_hdr._padding, packet_in_hdr.ingress_port, packet_in_hdr._padding]";
+        }
+        break;
+        case 130 :
+        {
+          return "I [ig_intr_md_for_tm.ucast_egress_port]";
+        }
+        break;
+        case 131 :
+        {
+          return "I [ipv4.srcAddr[15:0]]";
+        }
+        break;
+        case 132 :
+        {
+          return "I [ethernet.dstAddr[7:0], ethernet.srcAddr[47:40]]";
+        }
+        break;
+        case 133 :
+        {
+          return "I [ethernet.etherType]";
+        }
+        break;
+        case 134 :
+        {
+          return "I [ecmp_metadata.groupId]";
+        }
+        break;
+        case 135 :
+        {
+          return "I [ecmp_metadata.selector]";
+        }
+        break;
+        case 144 :
+        {
+          return "E [ig_intr_md.ingress_port]";
+        }
+        break;
+        case 145 :
+        {
+          return "E [packet_in_hdr.ingress_port, packet_in_hdr._padding]";
+        }
+        break;
+        case 146 :
+        {
+          return "E [eg_intr_md._pad0, eg_intr_md.egress_port]";
+        }
+        break;
+        case 256 :
+        {
+          return "I [ipv4.identification[7:0], ipv4.flags, ipv4.fragOffset, ipv4.ttl]";
+        }
+        break;
+        case 257 :
+        {
+          return "I [tcp.ackNo]";
+        }
+        break;
+        case 258 :
+        {
+          return "I [tcp.dataOffset, tcp.res, tcp.ecn, tcp.ctrl, tcp.window]";
+        }
+        break;
+        case 259 :
+        {
+          return "I [tcp.checksum, tcp.urgentPtr]";
+        }
+        break;
+        case 260 :
+        {
+          return "E [ipv4.ttl, ipv4.protocol, ipv4.hdrChecksum]";
+        }
+        break;
+        case 261 :
+        {
+          return "E [ipv4.srcAddr]";
+        }
+        break;
+        case 262 :
+        {
+          return "E [ipv4.dstAddr]";
+        }
+        break;
+        case 263 :
+        {
+          return "E [tcp.ackNo, udp.length_, udp.checksum]";
+        }
+        break;
+        case 264 :
+        {
+          return "E [tcp.dataOffset, tcp.res, tcp.ecn, tcp.ctrl, tcp.window]";
+        }
+        break;
+        case 265 :
+        {
+          return "E [tcp.checksum, tcp.urgentPtr]";
+        }
+        break;
+        case 266 :
+        {
+          return "E [ethernet.dstAddr[39:8]]";
+        }
+        break;
+        case 267 :
+        {
+          return "E [ethernet.srcAddr[31:0]]";
+        }
+        break;
+        case 288 :
+        {
+          return "I [ipv4.version, ipv4.ihl]";
+        }
+        break;
+        case 289 :
+        {
+          return "I [tcp.srcPort[15:8], udp.length_[15:8]]";
+        }
+        break;
+        case 290 :
+        {
+          return "I [tcp.srcPort[7:0], udp.length_[7:0]]";
+        }
+        break;
+        case 292 :
+        {
+          return "E [ipv4.version, ipv4.ihl]";
+        }
+        break;
+        case 293 :
+        {
+          return "E [ipv4.diffserv]";
+        }
+        break;
+        case 294 :
+        {
+          return "E [tcp.srcPort[15:8], udp.srcPort[15:8]]";
+        }
+        break;
+        case 295 :
+        {
+          return "E [tcp.srcPort[7:0], udp.srcPort[7:0]]";
+        }
+        break;
+        case 296 :
+        {
+          return "E [ethernet.dstAddr[47:40]]";
+        }
+        break;
+        case 297 :
+        {
+          return "E [ethernet.srcAddr[39:32]]";
+        }
+        break;
+        case 320 :
+        {
+          return "I [ipv4.diffserv, ipv4.totalLen[15:8]]";
+        }
+        break;
+        case 321 :
+        {
+          return "I [ipv4.totalLen[7:0], ipv4.identification[15:8]]";
+        }
+        break;
+        case 322 :
+        {
+          return "I [tcp.dstPort, udp.checksum]";
+        }
+        break;
+        case 323 :
+        {
+          return "I [tcp.seqNo[31:16]]";
+        }
+        break;
+        case 324 :
+        {
+          return "I [tcp.seqNo[15:0]]";
+        }
+        break;
+        case 326 :
+        {
+          return "E [ipv4.totalLen]";
+        }
+        break;
+        case 327 :
+        {
+          return "E [ipv4.identification]";
+        }
+        break;
+        case 328 :
+        {
+          return "E [ipv4.flags, ipv4.fragOffset]";
+        }
+        break;
+        case 329 :
+        {
+          return "E [tcp.dstPort, udp.dstPort]";
+        }
+        break;
+        case 330 :
+        {
+          return "E [tcp.seqNo[31:16]]";
+        }
+        break;
+        case 331 :
+        {
+          return "E [tcp.seqNo[15:0]]";
+        }
+        break;
+        case 332 :
+        {
+          return "E [ethernet.dstAddr[7:0], ethernet.srcAddr[47:40]]";
+        }
+        break;
+        case 333 :
+        {
+          return "E [ethernet.etherType]";
+        }
+        break;
+        case 334 :
+        {
+          return "E [packet_out_hdr.egress_port, packet_out_hdr._padding]";
+        }
+        break;
+      }
+    }
+    break;
+    case 1:
+    {
+      switch(container) {
+        case 0 :
+        {
+          return "I [POV[31:0]]";
+        }
+        break;
+        case 1 :
+        {
+          return "I [ipv4.protocol, ipv4.hdrChecksum, ipv4.srcAddr[31:24]]";
+        }
+        break;
+        case 2 :
+        {
+          return "I [ipv4.dstAddr]";
+        }
+        break;
+        case 3 :
+        {
+          return "I [ethernet.dstAddr[39:8]]";
+        }
+        break;
+        case 4 :
+        {
+          return "I [ethernet.srcAddr[31:0]]";
+        }
+        break;
+        case 5 :
+        {
+          return "I [udp.srcPort, udp.dstPort]";
+        }
+        break;
+        case 64 :
+        {
+          return "I [ig_intr_md_for_tm.copy_to_cpu]";
+        }
+        break;
+        case 65 :
+        {
+          return "I [ipv4.srcAddr[23:16]]";
+        }
+        break;
+        case 66 :
+        {
+          return "I [ethernet.dstAddr[47:40]]";
+        }
+        break;
+        case 67 :
+        {
+          return "I [ethernet.srcAddr[39:32]]";
+        }
+        break;
+        case 68 :
+        {
+          return "I [POV[39:32]]";
+        }
+        break;
+        case 69 :
+        {
+          return "I [ig_intr_md_for_tm.drop_ctl]";
+        }
+        break;
+        case 80 :
+        {
+          return "E [ig_intr_md_for_tm.copy_to_cpu]";
+        }
+        break;
+        case 81 :
+        {
+          return "E [eg_intr_md._pad7, eg_intr_md.egress_cos]";
+        }
+        break;
+        case 82 :
+        {
+          return "E [POV[7:0]]";
+        }
+        break;
+        case 128 :
+        {
+          return "I [ig_intr_md.resubmit_flag, ig_intr_md._pad1, ig_intr_md._pad2, ig_intr_md._pad3, ig_intr_md.ingress_port]";
+        }
+        break;
+        case 129 :
+        {
+          return "I [packet_out_hdr.egress_port, packet_out_hdr._padding, packet_in_hdr.ingress_port, packet_in_hdr._padding]";
+        }
+        break;
+        case 130 :
+        {
+          return "I [ig_intr_md_for_tm.ucast_egress_port]";
+        }
+        break;
+        case 131 :
+        {
+          return "I [ipv4.srcAddr[15:0]]";
+        }
+        break;
+        case 132 :
+        {
+          return "I [ethernet.dstAddr[7:0], ethernet.srcAddr[47:40]]";
+        }
+        break;
+        case 133 :
+        {
+          return "I [ethernet.etherType]";
+        }
+        break;
+        case 134 :
+        {
+          return "I [ecmp_metadata.groupId]";
+        }
+        break;
+        case 135 :
+        {
+          return "I [ecmp_metadata.selector]";
+        }
+        break;
+        case 144 :
+        {
+          return "E [ig_intr_md.ingress_port]";
+        }
+        break;
+        case 145 :
+        {
+          return "E [packet_in_hdr.ingress_port, packet_in_hdr._padding]";
+        }
+        break;
+        case 146 :
+        {
+          return "E [eg_intr_md._pad0, eg_intr_md.egress_port]";
+        }
+        break;
+        case 256 :
+        {
+          return "I [ipv4.identification[7:0], ipv4.flags, ipv4.fragOffset, ipv4.ttl]";
+        }
+        break;
+        case 257 :
+        {
+          return "I [tcp.ackNo]";
+        }
+        break;
+        case 258 :
+        {
+          return "I [tcp.dataOffset, tcp.res, tcp.ecn, tcp.ctrl, tcp.window]";
+        }
+        break;
+        case 259 :
+        {
+          return "I [tcp.checksum, tcp.urgentPtr]";
+        }
+        break;
+        case 260 :
+        {
+          return "E [ipv4.ttl, ipv4.protocol, ipv4.hdrChecksum]";
+        }
+        break;
+        case 261 :
+        {
+          return "E [ipv4.srcAddr]";
+        }
+        break;
+        case 262 :
+        {
+          return "E [ipv4.dstAddr]";
+        }
+        break;
+        case 263 :
+        {
+          return "E [tcp.ackNo, udp.length_, udp.checksum]";
+        }
+        break;
+        case 264 :
+        {
+          return "E [tcp.dataOffset, tcp.res, tcp.ecn, tcp.ctrl, tcp.window]";
+        }
+        break;
+        case 265 :
+        {
+          return "E [tcp.checksum, tcp.urgentPtr]";
+        }
+        break;
+        case 266 :
+        {
+          return "E [ethernet.dstAddr[39:8]]";
+        }
+        break;
+        case 267 :
+        {
+          return "E [ethernet.srcAddr[31:0]]";
+        }
+        break;
+        case 288 :
+        {
+          return "I [ipv4.version, ipv4.ihl]";
+        }
+        break;
+        case 289 :
+        {
+          return "I [tcp.srcPort[15:8], udp.length_[15:8]]";
+        }
+        break;
+        case 290 :
+        {
+          return "I [tcp.srcPort[7:0], udp.length_[7:0]]";
+        }
+        break;
+        case 292 :
+        {
+          return "E [ipv4.version, ipv4.ihl]";
+        }
+        break;
+        case 293 :
+        {
+          return "E [ipv4.diffserv]";
+        }
+        break;
+        case 294 :
+        {
+          return "E [tcp.srcPort[15:8], udp.srcPort[15:8]]";
+        }
+        break;
+        case 295 :
+        {
+          return "E [tcp.srcPort[7:0], udp.srcPort[7:0]]";
+        }
+        break;
+        case 296 :
+        {
+          return "E [ethernet.dstAddr[47:40]]";
+        }
+        break;
+        case 297 :
+        {
+          return "E [ethernet.srcAddr[39:32]]";
+        }
+        break;
+        case 320 :
+        {
+          return "I [ipv4.diffserv, ipv4.totalLen[15:8]]";
+        }
+        break;
+        case 321 :
+        {
+          return "I [ipv4.totalLen[7:0], ipv4.identification[15:8]]";
+        }
+        break;
+        case 322 :
+        {
+          return "I [tcp.dstPort, udp.checksum]";
+        }
+        break;
+        case 323 :
+        {
+          return "I [tcp.seqNo[31:16]]";
+        }
+        break;
+        case 324 :
+        {
+          return "I [tcp.seqNo[15:0]]";
+        }
+        break;
+        case 326 :
+        {
+          return "E [ipv4.totalLen]";
+        }
+        break;
+        case 327 :
+        {
+          return "E [ipv4.identification]";
+        }
+        break;
+        case 328 :
+        {
+          return "E [ipv4.flags, ipv4.fragOffset]";
+        }
+        break;
+        case 329 :
+        {
+          return "E [tcp.dstPort, udp.dstPort]";
+        }
+        break;
+        case 330 :
+        {
+          return "E [tcp.seqNo[31:16]]";
+        }
+        break;
+        case 331 :
+        {
+          return "E [tcp.seqNo[15:0]]";
+        }
+        break;
+        case 332 :
+        {
+          return "E [ethernet.dstAddr[7:0], ethernet.srcAddr[47:40]]";
+        }
+        break;
+        case 333 :
+        {
+          return "E [ethernet.etherType]";
+        }
+        break;
+        case 334 :
+        {
+          return "E [packet_out_hdr.egress_port, packet_out_hdr._padding]";
+        }
+        break;
+      }
+    }
+    break;
+    case 2:
+    {
+      switch(container) {
+        case 0 :
+        {
+          return "I [POV[31:0]]";
+        }
+        break;
+        case 1 :
+        {
+          return "I [ipv4.protocol, ipv4.hdrChecksum, ipv4.srcAddr[31:24]]";
+        }
+        break;
+        case 2 :
+        {
+          return "I [ipv4.dstAddr]";
+        }
+        break;
+        case 3 :
+        {
+          return "I [ethernet.dstAddr[39:8]]";
+        }
+        break;
+        case 4 :
+        {
+          return "I [ethernet.srcAddr[31:0]]";
+        }
+        break;
+        case 5 :
+        {
+          return "I [udp.srcPort, udp.dstPort]";
+        }
+        break;
+        case 64 :
+        {
+          return "I [ig_intr_md_for_tm.copy_to_cpu]";
+        }
+        break;
+        case 65 :
+        {
+          return "I [ipv4.srcAddr[23:16]]";
+        }
+        break;
+        case 66 :
+        {
+          return "I [ethernet.dstAddr[47:40]]";
+        }
+        break;
+        case 67 :
+        {
+          return "I [ethernet.srcAddr[39:32]]";
+        }
+        break;
+        case 68 :
+        {
+          return "I [POV[39:32]]";
+        }
+        break;
+        case 69 :
+        {
+          return "I [ig_intr_md_for_tm.drop_ctl]";
+        }
+        break;
+        case 80 :
+        {
+          return "E [ig_intr_md_for_tm.copy_to_cpu]";
+        }
+        break;
+        case 81 :
+        {
+          return "E [eg_intr_md._pad7, eg_intr_md.egress_cos]";
+        }
+        break;
+        case 82 :
+        {
+          return "E [POV[7:0]]";
+        }
+        break;
+        case 128 :
+        {
+          return "I [ig_intr_md.resubmit_flag, ig_intr_md._pad1, ig_intr_md._pad2, ig_intr_md._pad3, ig_intr_md.ingress_port]";
+        }
+        break;
+        case 129 :
+        {
+          return "I [packet_out_hdr.egress_port, packet_out_hdr._padding, packet_in_hdr.ingress_port, packet_in_hdr._padding]";
+        }
+        break;
+        case 130 :
+        {
+          return "I [ig_intr_md_for_tm.ucast_egress_port]";
+        }
+        break;
+        case 131 :
+        {
+          return "I [ipv4.srcAddr[15:0]]";
+        }
+        break;
+        case 132 :
+        {
+          return "I [ethernet.dstAddr[7:0], ethernet.srcAddr[47:40]]";
+        }
+        break;
+        case 133 :
+        {
+          return "I [ethernet.etherType]";
+        }
+        break;
+        case 134 :
+        {
+          return "I [ecmp_metadata.groupId]";
+        }
+        break;
+        case 135 :
+        {
+          return "I [ecmp_metadata.selector]";
+        }
+        break;
+        case 144 :
+        {
+          return "E [ig_intr_md.ingress_port]";
+        }
+        break;
+        case 145 :
+        {
+          return "E [packet_in_hdr.ingress_port, packet_in_hdr._padding]";
+        }
+        break;
+        case 146 :
+        {
+          return "E [eg_intr_md._pad0, eg_intr_md.egress_port]";
+        }
+        break;
+        case 256 :
+        {
+          return "I [ipv4.identification[7:0], ipv4.flags, ipv4.fragOffset, ipv4.ttl]";
+        }
+        break;
+        case 257 :
+        {
+          return "I [tcp.ackNo]";
+        }
+        break;
+        case 258 :
+        {
+          return "I [tcp.dataOffset, tcp.res, tcp.ecn, tcp.ctrl, tcp.window]";
+        }
+        break;
+        case 259 :
+        {
+          return "I [tcp.checksum, tcp.urgentPtr]";
+        }
+        break;
+        case 260 :
+        {
+          return "E [ipv4.ttl, ipv4.protocol, ipv4.hdrChecksum]";
+        }
+        break;
+        case 261 :
+        {
+          return "E [ipv4.srcAddr]";
+        }
+        break;
+        case 262 :
+        {
+          return "E [ipv4.dstAddr]";
+        }
+        break;
+        case 263 :
+        {
+          return "E [tcp.ackNo, udp.length_, udp.checksum]";
+        }
+        break;
+        case 264 :
+        {
+          return "E [tcp.dataOffset, tcp.res, tcp.ecn, tcp.ctrl, tcp.window]";
+        }
+        break;
+        case 265 :
+        {
+          return "E [tcp.checksum, tcp.urgentPtr]";
+        }
+        break;
+        case 266 :
+        {
+          return "E [ethernet.dstAddr[39:8]]";
+        }
+        break;
+        case 267 :
+        {
+          return "E [ethernet.srcAddr[31:0]]";
+        }
+        break;
+        case 288 :
+        {
+          return "I [ipv4.version, ipv4.ihl]";
+        }
+        break;
+        case 289 :
+        {
+          return "I [tcp.srcPort[15:8], udp.length_[15:8]]";
+        }
+        break;
+        case 290 :
+        {
+          return "I [tcp.srcPort[7:0], udp.length_[7:0]]";
+        }
+        break;
+        case 292 :
+        {
+          return "E [ipv4.version, ipv4.ihl]";
+        }
+        break;
+        case 293 :
+        {
+          return "E [ipv4.diffserv]";
+        }
+        break;
+        case 294 :
+        {
+          return "E [tcp.srcPort[15:8], udp.srcPort[15:8]]";
+        }
+        break;
+        case 295 :
+        {
+          return "E [tcp.srcPort[7:0], udp.srcPort[7:0]]";
+        }
+        break;
+        case 296 :
+        {
+          return "E [ethernet.dstAddr[47:40]]";
+        }
+        break;
+        case 297 :
+        {
+          return "E [ethernet.srcAddr[39:32]]";
+        }
+        break;
+        case 320 :
+        {
+          return "I [ipv4.diffserv, ipv4.totalLen[15:8]]";
+        }
+        break;
+        case 321 :
+        {
+          return "I [ipv4.totalLen[7:0], ipv4.identification[15:8]]";
+        }
+        break;
+        case 322 :
+        {
+          return "I [tcp.dstPort, udp.checksum]";
+        }
+        break;
+        case 323 :
+        {
+          return "I [tcp.seqNo[31:16]]";
+        }
+        break;
+        case 324 :
+        {
+          return "I [tcp.seqNo[15:0]]";
+        }
+        break;
+        case 326 :
+        {
+          return "E [ipv4.totalLen]";
+        }
+        break;
+        case 327 :
+        {
+          return "E [ipv4.identification]";
+        }
+        break;
+        case 328 :
+        {
+          return "E [ipv4.flags, ipv4.fragOffset]";
+        }
+        break;
+        case 329 :
+        {
+          return "E [tcp.dstPort, udp.dstPort]";
+        }
+        break;
+        case 330 :
+        {
+          return "E [tcp.seqNo[31:16]]";
+        }
+        break;
+        case 331 :
+        {
+          return "E [tcp.seqNo[15:0]]";
+        }
+        break;
+        case 332 :
+        {
+          return "E [ethernet.dstAddr[7:0], ethernet.srcAddr[47:40]]";
+        }
+        break;
+        case 333 :
+        {
+          return "E [ethernet.etherType]";
+        }
+        break;
+        case 334 :
+        {
+          return "E [packet_out_hdr.egress_port, packet_out_hdr._padding]";
+        }
+        break;
+      }
+    }
+    break;
+    case 3:
+    {
+      switch(container) {
+        case 0 :
+        {
+          return "I [POV[31:0]]";
+        }
+        break;
+        case 1 :
+        {
+          return "I [ipv4.protocol, ipv4.hdrChecksum, ipv4.srcAddr[31:24]]";
+        }
+        break;
+        case 2 :
+        {
+          return "I [ipv4.dstAddr]";
+        }
+        break;
+        case 3 :
+        {
+          return "I [ethernet.dstAddr[39:8]]";
+        }
+        break;
+        case 4 :
+        {
+          return "I [ethernet.srcAddr[31:0]]";
+        }
+        break;
+        case 5 :
+        {
+          return "I [udp.srcPort, udp.dstPort]";
+        }
+        break;
+        case 64 :
+        {
+          return "I [ig_intr_md_for_tm.copy_to_cpu]";
+        }
+        break;
+        case 65 :
+        {
+          return "I [ipv4.srcAddr[23:16]]";
+        }
+        break;
+        case 66 :
+        {
+          return "I [ethernet.dstAddr[47:40]]";
+        }
+        break;
+        case 67 :
+        {
+          return "I [ethernet.srcAddr[39:32]]";
+        }
+        break;
+        case 68 :
+        {
+          return "I [POV[39:32]]";
+        }
+        break;
+        case 69 :
+        {
+          return "I [ig_intr_md_for_tm.drop_ctl]";
+        }
+        break;
+        case 80 :
+        {
+          return "E [ig_intr_md_for_tm.copy_to_cpu]";
+        }
+        break;
+        case 81 :
+        {
+          return "E [eg_intr_md._pad7, eg_intr_md.egress_cos]";
+        }
+        break;
+        case 82 :
+        {
+          return "E [POV[7:0]]";
+        }
+        break;
+        case 128 :
+        {
+          return "I [ig_intr_md.resubmit_flag, ig_intr_md._pad1, ig_intr_md._pad2, ig_intr_md._pad3, ig_intr_md.ingress_port]";
+        }
+        break;
+        case 129 :
+        {
+          return "I [packet_out_hdr.egress_port, packet_out_hdr._padding, packet_in_hdr.ingress_port, packet_in_hdr._padding]";
+        }
+        break;
+        case 130 :
+        {
+          return "I [ig_intr_md_for_tm.ucast_egress_port]";
+        }
+        break;
+        case 131 :
+        {
+          return "I [ipv4.srcAddr[15:0]]";
+        }
+        break;
+        case 132 :
+        {
+          return "I [ethernet.dstAddr[7:0], ethernet.srcAddr[47:40]]";
+        }
+        break;
+        case 133 :
+        {
+          return "I [ethernet.etherType]";
+        }
+        break;
+        case 134 :
+        {
+          return "I [ecmp_metadata.groupId]";
+        }
+        break;
+        case 135 :
+        {
+          return "I [ecmp_metadata.selector]";
+        }
+        break;
+        case 144 :
+        {
+          return "E [ig_intr_md.ingress_port]";
+        }
+        break;
+        case 145 :
+        {
+          return "E [packet_in_hdr.ingress_port, packet_in_hdr._padding]";
+        }
+        break;
+        case 146 :
+        {
+          return "E [eg_intr_md._pad0, eg_intr_md.egress_port]";
+        }
+        break;
+        case 256 :
+        {
+          return "I [ipv4.identification[7:0], ipv4.flags, ipv4.fragOffset, ipv4.ttl]";
+        }
+        break;
+        case 257 :
+        {
+          return "I [tcp.ackNo]";
+        }
+        break;
+        case 258 :
+        {
+          return "I [tcp.dataOffset, tcp.res, tcp.ecn, tcp.ctrl, tcp.window]";
+        }
+        break;
+        case 259 :
+        {
+          return "I [tcp.checksum, tcp.urgentPtr]";
+        }
+        break;
+        case 260 :
+        {
+          return "E [ipv4.ttl, ipv4.protocol, ipv4.hdrChecksum]";
+        }
+        break;
+        case 261 :
+        {
+          return "E [ipv4.srcAddr]";
+        }
+        break;
+        case 262 :
+        {
+          return "E [ipv4.dstAddr]";
+        }
+        break;
+        case 263 :
+        {
+          return "E [tcp.ackNo, udp.length_, udp.checksum]";
+        }
+        break;
+        case 264 :
+        {
+          return "E [tcp.dataOffset, tcp.res, tcp.ecn, tcp.ctrl, tcp.window]";
+        }
+        break;
+        case 265 :
+        {
+          return "E [tcp.checksum, tcp.urgentPtr]";
+        }
+        break;
+        case 266 :
+        {
+          return "E [ethernet.dstAddr[39:8]]";
+        }
+        break;
+        case 267 :
+        {
+          return "E [ethernet.srcAddr[31:0]]";
+        }
+        break;
+        case 288 :
+        {
+          return "I [ipv4.version, ipv4.ihl]";
+        }
+        break;
+        case 289 :
+        {
+          return "I [tcp.srcPort[15:8], udp.length_[15:8]]";
+        }
+        break;
+        case 290 :
+        {
+          return "I [tcp.srcPort[7:0], udp.length_[7:0]]";
+        }
+        break;
+        case 292 :
+        {
+          return "E [ipv4.version, ipv4.ihl]";
+        }
+        break;
+        case 293 :
+        {
+          return "E [ipv4.diffserv]";
+        }
+        break;
+        case 294 :
+        {
+          return "E [tcp.srcPort[15:8], udp.srcPort[15:8]]";
+        }
+        break;
+        case 295 :
+        {
+          return "E [tcp.srcPort[7:0], udp.srcPort[7:0]]";
+        }
+        break;
+        case 296 :
+        {
+          return "E [ethernet.dstAddr[47:40]]";
+        }
+        break;
+        case 297 :
+        {
+          return "E [ethernet.srcAddr[39:32]]";
+        }
+        break;
+        case 320 :
+        {
+          return "I [ipv4.diffserv, ipv4.totalLen[15:8]]";
+        }
+        break;
+        case 321 :
+        {
+          return "I [ipv4.totalLen[7:0], ipv4.identification[15:8]]";
+        }
+        break;
+        case 322 :
+        {
+          return "I [tcp.dstPort, udp.checksum]";
+        }
+        break;
+        case 323 :
+        {
+          return "I [tcp.seqNo[31:16]]";
+        }
+        break;
+        case 324 :
+        {
+          return "I [tcp.seqNo[15:0]]";
+        }
+        break;
+        case 326 :
+        {
+          return "E [ipv4.totalLen]";
+        }
+        break;
+        case 327 :
+        {
+          return "E [ipv4.identification]";
+        }
+        break;
+        case 328 :
+        {
+          return "E [ipv4.flags, ipv4.fragOffset]";
+        }
+        break;
+        case 329 :
+        {
+          return "E [tcp.dstPort, udp.dstPort]";
+        }
+        break;
+        case 330 :
+        {
+          return "E [tcp.seqNo[31:16]]";
+        }
+        break;
+        case 331 :
+        {
+          return "E [tcp.seqNo[15:0]]";
+        }
+        break;
+        case 332 :
+        {
+          return "E [ethernet.dstAddr[7:0], ethernet.srcAddr[47:40]]";
+        }
+        break;
+        case 333 :
+        {
+          return "E [ethernet.etherType]";
+        }
+        break;
+        case 334 :
+        {
+          return "E [packet_out_hdr.egress_port, packet_out_hdr._padding]";
+        }
+        break;
+      }
+    }
+    break;
+    case 4:
+    {
+      switch(container) {
+        case 0 :
+        {
+          return "I [POV[31:0]]";
+        }
+        break;
+        case 1 :
+        {
+          return "I [ipv4.protocol, ipv4.hdrChecksum, ipv4.srcAddr[31:24]]";
+        }
+        break;
+        case 2 :
+        {
+          return "I [ipv4.dstAddr]";
+        }
+        break;
+        case 3 :
+        {
+          return "I [ethernet.dstAddr[39:8]]";
+        }
+        break;
+        case 4 :
+        {
+          return "I [ethernet.srcAddr[31:0]]";
+        }
+        break;
+        case 5 :
+        {
+          return "I [udp.srcPort, udp.dstPort]";
+        }
+        break;
+        case 64 :
+        {
+          return "I [ig_intr_md_for_tm.copy_to_cpu]";
+        }
+        break;
+        case 65 :
+        {
+          return "I [ipv4.srcAddr[23:16]]";
+        }
+        break;
+        case 66 :
+        {
+          return "I [ethernet.dstAddr[47:40]]";
+        }
+        break;
+        case 67 :
+        {
+          return "I [ethernet.srcAddr[39:32]]";
+        }
+        break;
+        case 68 :
+        {
+          return "I [POV[39:32]]";
+        }
+        break;
+        case 69 :
+        {
+          return "I [ig_intr_md_for_tm.drop_ctl]";
+        }
+        break;
+        case 80 :
+        {
+          return "E [ig_intr_md_for_tm.copy_to_cpu]";
+        }
+        break;
+        case 81 :
+        {
+          return "E [eg_intr_md._pad7, eg_intr_md.egress_cos]";
+        }
+        break;
+        case 82 :
+        {
+          return "E [POV[7:0]]";
+        }
+        break;
+        case 128 :
+        {
+          return "I [ig_intr_md.resubmit_flag, ig_intr_md._pad1, ig_intr_md._pad2, ig_intr_md._pad3, ig_intr_md.ingress_port]";
+        }
+        break;
+        case 129 :
+        {
+          return "I [packet_out_hdr.egress_port, packet_out_hdr._padding, packet_in_hdr.ingress_port, packet_in_hdr._padding]";
+        }
+        break;
+        case 130 :
+        {
+          return "I [ig_intr_md_for_tm.ucast_egress_port]";
+        }
+        break;
+        case 131 :
+        {
+          return "I [ipv4.srcAddr[15:0]]";
+        }
+        break;
+        case 132 :
+        {
+          return "I [ethernet.dstAddr[7:0], ethernet.srcAddr[47:40]]";
+        }
+        break;
+        case 133 :
+        {
+          return "I [ethernet.etherType]";
+        }
+        break;
+        case 134 :
+        {
+          return "I [ecmp_metadata.groupId]";
+        }
+        break;
+        case 135 :
+        {
+          return "I [ecmp_metadata.selector]";
+        }
+        break;
+        case 144 :
+        {
+          return "E [ig_intr_md.ingress_port]";
+        }
+        break;
+        case 145 :
+        {
+          return "E [packet_in_hdr.ingress_port, packet_in_hdr._padding]";
+        }
+        break;
+        case 146 :
+        {
+          return "E [eg_intr_md._pad0, eg_intr_md.egress_port]";
+        }
+        break;
+        case 256 :
+        {
+          return "I [ipv4.identification[7:0], ipv4.flags, ipv4.fragOffset, ipv4.ttl]";
+        }
+        break;
+        case 257 :
+        {
+          return "I [tcp.ackNo]";
+        }
+        break;
+        case 258 :
+        {
+          return "I [tcp.dataOffset, tcp.res, tcp.ecn, tcp.ctrl, tcp.window]";
+        }
+        break;
+        case 259 :
+        {
+          return "I [tcp.checksum, tcp.urgentPtr]";
+        }
+        break;
+        case 260 :
+        {
+          return "E [ipv4.ttl, ipv4.protocol, ipv4.hdrChecksum]";
+        }
+        break;
+        case 261 :
+        {
+          return "E [ipv4.srcAddr]";
+        }
+        break;
+        case 262 :
+        {
+          return "E [ipv4.dstAddr]";
+        }
+        break;
+        case 263 :
+        {
+          return "E [tcp.ackNo, udp.length_, udp.checksum]";
+        }
+        break;
+        case 264 :
+        {
+          return "E [tcp.dataOffset, tcp.res, tcp.ecn, tcp.ctrl, tcp.window]";
+        }
+        break;
+        case 265 :
+        {
+          return "E [tcp.checksum, tcp.urgentPtr]";
+        }
+        break;
+        case 266 :
+        {
+          return "E [ethernet.dstAddr[39:8]]";
+        }
+        break;
+        case 267 :
+        {
+          return "E [ethernet.srcAddr[31:0]]";
+        }
+        break;
+        case 288 :
+        {
+          return "I [ipv4.version, ipv4.ihl]";
+        }
+        break;
+        case 289 :
+        {
+          return "I [tcp.srcPort[15:8], udp.length_[15:8]]";
+        }
+        break;
+        case 290 :
+        {
+          return "I [tcp.srcPort[7:0], udp.length_[7:0]]";
+        }
+        break;
+        case 292 :
+        {
+          return "E [ipv4.version, ipv4.ihl]";
+        }
+        break;
+        case 293 :
+        {
+          return "E [ipv4.diffserv]";
+        }
+        break;
+        case 294 :
+        {
+          return "E [tcp.srcPort[15:8], udp.srcPort[15:8]]";
+        }
+        break;
+        case 295 :
+        {
+          return "E [tcp.srcPort[7:0], udp.srcPort[7:0]]";
+        }
+        break;
+        case 296 :
+        {
+          return "E [ethernet.dstAddr[47:40]]";
+        }
+        break;
+        case 297 :
+        {
+          return "E [ethernet.srcAddr[39:32]]";
+        }
+        break;
+        case 320 :
+        {
+          return "I [ipv4.diffserv, ipv4.totalLen[15:8]]";
+        }
+        break;
+        case 321 :
+        {
+          return "I [ipv4.totalLen[7:0], ipv4.identification[15:8]]";
+        }
+        break;
+        case 322 :
+        {
+          return "I [tcp.dstPort, udp.checksum]";
+        }
+        break;
+        case 323 :
+        {
+          return "I [tcp.seqNo[31:16]]";
+        }
+        break;
+        case 324 :
+        {
+          return "I [tcp.seqNo[15:0]]";
+        }
+        break;
+        case 326 :
+        {
+          return "E [ipv4.totalLen]";
+        }
+        break;
+        case 327 :
+        {
+          return "E [ipv4.identification]";
+        }
+        break;
+        case 328 :
+        {
+          return "E [ipv4.flags, ipv4.fragOffset]";
+        }
+        break;
+        case 329 :
+        {
+          return "E [tcp.dstPort, udp.dstPort]";
+        }
+        break;
+        case 330 :
+        {
+          return "E [tcp.seqNo[31:16]]";
+        }
+        break;
+        case 331 :
+        {
+          return "E [tcp.seqNo[15:0]]";
+        }
+        break;
+        case 332 :
+        {
+          return "E [ethernet.dstAddr[7:0], ethernet.srcAddr[47:40]]";
+        }
+        break;
+        case 333 :
+        {
+          return "E [ethernet.etherType]";
+        }
+        break;
+        case 334 :
+        {
+          return "E [packet_out_hdr.egress_port, packet_out_hdr._padding]";
+        }
+        break;
+      }
+    }
+    break;
+    case 5:
+    {
+      switch(container) {
+        case 0 :
+        {
+          return "I [POV[31:0]]";
+        }
+        break;
+        case 1 :
+        {
+          return "I [ipv4.protocol, ipv4.hdrChecksum, ipv4.srcAddr[31:24]]";
+        }
+        break;
+        case 2 :
+        {
+          return "I [ipv4.dstAddr]";
+        }
+        break;
+        case 3 :
+        {
+          return "I [ethernet.dstAddr[39:8]]";
+        }
+        break;
+        case 4 :
+        {
+          return "I [ethernet.srcAddr[31:0]]";
+        }
+        break;
+        case 5 :
+        {
+          return "I [udp.srcPort, udp.dstPort]";
+        }
+        break;
+        case 64 :
+        {
+          return "I [ig_intr_md_for_tm.copy_to_cpu]";
+        }
+        break;
+        case 65 :
+        {
+          return "I [ipv4.srcAddr[23:16]]";
+        }
+        break;
+        case 66 :
+        {
+          return "I [ethernet.dstAddr[47:40]]";
+        }
+        break;
+        case 67 :
+        {
+          return "I [ethernet.srcAddr[39:32]]";
+        }
+        break;
+        case 68 :
+        {
+          return "I [POV[39:32]]";
+        }
+        break;
+        case 69 :
+        {
+          return "I [ig_intr_md_for_tm.drop_ctl]";
+        }
+        break;
+        case 80 :
+        {
+          return "E [ig_intr_md_for_tm.copy_to_cpu]";
+        }
+        break;
+        case 81 :
+        {
+          return "E [eg_intr_md._pad7, eg_intr_md.egress_cos]";
+        }
+        break;
+        case 82 :
+        {
+          return "E [POV[7:0]]";
+        }
+        break;
+        case 128 :
+        {
+          return "I [ig_intr_md.resubmit_flag, ig_intr_md._pad1, ig_intr_md._pad2, ig_intr_md._pad3, ig_intr_md.ingress_port]";
+        }
+        break;
+        case 129 :
+        {
+          return "I [packet_out_hdr.egress_port, packet_out_hdr._padding, packet_in_hdr.ingress_port, packet_in_hdr._padding]";
+        }
+        break;
+        case 130 :
+        {
+          return "I [ig_intr_md_for_tm.ucast_egress_port]";
+        }
+        break;
+        case 131 :
+        {
+          return "I [ipv4.srcAddr[15:0]]";
+        }
+        break;
+        case 132 :
+        {
+          return "I [ethernet.dstAddr[7:0], ethernet.srcAddr[47:40]]";
+        }
+        break;
+        case 133 :
+        {
+          return "I [ethernet.etherType]";
+        }
+        break;
+        case 134 :
+        {
+          return "I [ecmp_metadata.groupId]";
+        }
+        break;
+        case 135 :
+        {
+          return "I [ecmp_metadata.selector]";
+        }
+        break;
+        case 144 :
+        {
+          return "E [ig_intr_md.ingress_port]";
+        }
+        break;
+        case 145 :
+        {
+          return "E [packet_in_hdr.ingress_port, packet_in_hdr._padding]";
+        }
+        break;
+        case 146 :
+        {
+          return "E [eg_intr_md._pad0, eg_intr_md.egress_port]";
+        }
+        break;
+        case 256 :
+        {
+          return "I [ipv4.identification[7:0], ipv4.flags, ipv4.fragOffset, ipv4.ttl]";
+        }
+        break;
+        case 257 :
+        {
+          return "I [tcp.ackNo]";
+        }
+        break;
+        case 258 :
+        {
+          return "I [tcp.dataOffset, tcp.res, tcp.ecn, tcp.ctrl, tcp.window]";
+        }
+        break;
+        case 259 :
+        {
+          return "I [tcp.checksum, tcp.urgentPtr]";
+        }
+        break;
+        case 260 :
+        {
+          return "E [ipv4.ttl, ipv4.protocol, ipv4.hdrChecksum]";
+        }
+        break;
+        case 261 :
+        {
+          return "E [ipv4.srcAddr]";
+        }
+        break;
+        case 262 :
+        {
+          return "E [ipv4.dstAddr]";
+        }
+        break;
+        case 263 :
+        {
+          return "E [tcp.ackNo, udp.length_, udp.checksum]";
+        }
+        break;
+        case 264 :
+        {
+          return "E [tcp.dataOffset, tcp.res, tcp.ecn, tcp.ctrl, tcp.window]";
+        }
+        break;
+        case 265 :
+        {
+          return "E [tcp.checksum, tcp.urgentPtr]";
+        }
+        break;
+        case 266 :
+        {
+          return "E [ethernet.dstAddr[39:8]]";
+        }
+        break;
+        case 267 :
+        {
+          return "E [ethernet.srcAddr[31:0]]";
+        }
+        break;
+        case 288 :
+        {
+          return "I [ipv4.version, ipv4.ihl]";
+        }
+        break;
+        case 289 :
+        {
+          return "I [tcp.srcPort[15:8], udp.length_[15:8]]";
+        }
+        break;
+        case 290 :
+        {
+          return "I [tcp.srcPort[7:0], udp.length_[7:0]]";
+        }
+        break;
+        case 292 :
+        {
+          return "E [ipv4.version, ipv4.ihl]";
+        }
+        break;
+        case 293 :
+        {
+          return "E [ipv4.diffserv]";
+        }
+        break;
+        case 294 :
+        {
+          return "E [tcp.srcPort[15:8], udp.srcPort[15:8]]";
+        }
+        break;
+        case 295 :
+        {
+          return "E [tcp.srcPort[7:0], udp.srcPort[7:0]]";
+        }
+        break;
+        case 296 :
+        {
+          return "E [ethernet.dstAddr[47:40]]";
+        }
+        break;
+        case 297 :
+        {
+          return "E [ethernet.srcAddr[39:32]]";
+        }
+        break;
+        case 320 :
+        {
+          return "I [ipv4.diffserv, ipv4.totalLen[15:8]]";
+        }
+        break;
+        case 321 :
+        {
+          return "I [ipv4.totalLen[7:0], ipv4.identification[15:8]]";
+        }
+        break;
+        case 322 :
+        {
+          return "I [tcp.dstPort, udp.checksum]";
+        }
+        break;
+        case 323 :
+        {
+          return "I [tcp.seqNo[31:16]]";
+        }
+        break;
+        case 324 :
+        {
+          return "I [tcp.seqNo[15:0]]";
+        }
+        break;
+        case 326 :
+        {
+          return "E [ipv4.totalLen]";
+        }
+        break;
+        case 327 :
+        {
+          return "E [ipv4.identification]";
+        }
+        break;
+        case 328 :
+        {
+          return "E [ipv4.flags, ipv4.fragOffset]";
+        }
+        break;
+        case 329 :
+        {
+          return "E [tcp.dstPort, udp.dstPort]";
+        }
+        break;
+        case 330 :
+        {
+          return "E [tcp.seqNo[31:16]]";
+        }
+        break;
+        case 331 :
+        {
+          return "E [tcp.seqNo[15:0]]";
+        }
+        break;
+        case 332 :
+        {
+          return "E [ethernet.dstAddr[7:0], ethernet.srcAddr[47:40]]";
+        }
+        break;
+        case 333 :
+        {
+          return "E [ethernet.etherType]";
+        }
+        break;
+        case 334 :
+        {
+          return "E [packet_out_hdr.egress_port, packet_out_hdr._padding]";
+        }
+        break;
+      }
+    }
+    break;
+    case 6:
+    {
+      switch(container) {
+        case 0 :
+        {
+          return "I [POV[31:0]]";
+        }
+        break;
+        case 1 :
+        {
+          return "I [ipv4.protocol, ipv4.hdrChecksum, ipv4.srcAddr[31:24]]";
+        }
+        break;
+        case 2 :
+        {
+          return "I [ipv4.dstAddr]";
+        }
+        break;
+        case 3 :
+        {
+          return "I [ethernet.dstAddr[39:8]]";
+        }
+        break;
+        case 4 :
+        {
+          return "I [ethernet.srcAddr[31:0]]";
+        }
+        break;
+        case 5 :
+        {
+          return "I [udp.srcPort, udp.dstPort]";
+        }
+        break;
+        case 64 :
+        {
+          return "I [ig_intr_md_for_tm.copy_to_cpu]";
+        }
+        break;
+        case 65 :
+        {
+          return "I [ipv4.srcAddr[23:16]]";
+        }
+        break;
+        case 66 :
+        {
+          return "I [ethernet.dstAddr[47:40]]";
+        }
+        break;
+        case 67 :
+        {
+          return "I [ethernet.srcAddr[39:32]]";
+        }
+        break;
+        case 68 :
+        {
+          return "I [POV[39:32]]";
+        }
+        break;
+        case 69 :
+        {
+          return "I [ig_intr_md_for_tm.drop_ctl]";
+        }
+        break;
+        case 80 :
+        {
+          return "E [ig_intr_md_for_tm.copy_to_cpu]";
+        }
+        break;
+        case 81 :
+        {
+          return "E [eg_intr_md._pad7, eg_intr_md.egress_cos]";
+        }
+        break;
+        case 82 :
+        {
+          return "E [POV[7:0]]";
+        }
+        break;
+        case 128 :
+        {
+          return "I [ig_intr_md.resubmit_flag, ig_intr_md._pad1, ig_intr_md._pad2, ig_intr_md._pad3, ig_intr_md.ingress_port]";
+        }
+        break;
+        case 129 :
+        {
+          return "I [packet_out_hdr.egress_port, packet_out_hdr._padding, packet_in_hdr.ingress_port, packet_in_hdr._padding]";
+        }
+        break;
+        case 130 :
+        {
+          return "I [ig_intr_md_for_tm.ucast_egress_port]";
+        }
+        break;
+        case 131 :
+        {
+          return "I [ipv4.srcAddr[15:0]]";
+        }
+        break;
+        case 132 :
+        {
+          return "I [ethernet.dstAddr[7:0], ethernet.srcAddr[47:40]]";
+        }
+        break;
+        case 133 :
+        {
+          return "I [ethernet.etherType]";
+        }
+        break;
+        case 134 :
+        {
+          return "I [ecmp_metadata.groupId]";
+        }
+        break;
+        case 135 :
+        {
+          return "I [ecmp_metadata.selector]";
+        }
+        break;
+        case 144 :
+        {
+          return "E [ig_intr_md.ingress_port]";
+        }
+        break;
+        case 145 :
+        {
+          return "E [packet_in_hdr.ingress_port, packet_in_hdr._padding]";
+        }
+        break;
+        case 146 :
+        {
+          return "E [eg_intr_md._pad0, eg_intr_md.egress_port]";
+        }
+        break;
+        case 256 :
+        {
+          return "I [ipv4.identification[7:0], ipv4.flags, ipv4.fragOffset, ipv4.ttl]";
+        }
+        break;
+        case 257 :
+        {
+          return "I [tcp.ackNo]";
+        }
+        break;
+        case 258 :
+        {
+          return "I [tcp.dataOffset, tcp.res, tcp.ecn, tcp.ctrl, tcp.window]";
+        }
+        break;
+        case 259 :
+        {
+          return "I [tcp.checksum, tcp.urgentPtr]";
+        }
+        break;
+        case 260 :
+        {
+          return "E [ipv4.ttl, ipv4.protocol, ipv4.hdrChecksum]";
+        }
+        break;
+        case 261 :
+        {
+          return "E [ipv4.srcAddr]";
+        }
+        break;
+        case 262 :
+        {
+          return "E [ipv4.dstAddr]";
+        }
+        break;
+        case 263 :
+        {
+          return "E [tcp.ackNo, udp.length_, udp.checksum]";
+        }
+        break;
+        case 264 :
+        {
+          return "E [tcp.dataOffset, tcp.res, tcp.ecn, tcp.ctrl, tcp.window]";
+        }
+        break;
+        case 265 :
+        {
+          return "E [tcp.checksum, tcp.urgentPtr]";
+        }
+        break;
+        case 266 :
+        {
+          return "E [ethernet.dstAddr[39:8]]";
+        }
+        break;
+        case 267 :
+        {
+          return "E [ethernet.srcAddr[31:0]]";
+        }
+        break;
+        case 288 :
+        {
+          return "I [ipv4.version, ipv4.ihl]";
+        }
+        break;
+        case 289 :
+        {
+          return "I [tcp.srcPort[15:8], udp.length_[15:8]]";
+        }
+        break;
+        case 290 :
+        {
+          return "I [tcp.srcPort[7:0], udp.length_[7:0]]";
+        }
+        break;
+        case 292 :
+        {
+          return "E [ipv4.version, ipv4.ihl]";
+        }
+        break;
+        case 293 :
+        {
+          return "E [ipv4.diffserv]";
+        }
+        break;
+        case 294 :
+        {
+          return "E [tcp.srcPort[15:8], udp.srcPort[15:8]]";
+        }
+        break;
+        case 295 :
+        {
+          return "E [tcp.srcPort[7:0], udp.srcPort[7:0]]";
+        }
+        break;
+        case 296 :
+        {
+          return "E [ethernet.dstAddr[47:40]]";
+        }
+        break;
+        case 297 :
+        {
+          return "E [ethernet.srcAddr[39:32]]";
+        }
+        break;
+        case 320 :
+        {
+          return "I [ipv4.diffserv, ipv4.totalLen[15:8]]";
+        }
+        break;
+        case 321 :
+        {
+          return "I [ipv4.totalLen[7:0], ipv4.identification[15:8]]";
+        }
+        break;
+        case 322 :
+        {
+          return "I [tcp.dstPort, udp.checksum]";
+        }
+        break;
+        case 323 :
+        {
+          return "I [tcp.seqNo[31:16]]";
+        }
+        break;
+        case 324 :
+        {
+          return "I [tcp.seqNo[15:0]]";
+        }
+        break;
+        case 326 :
+        {
+          return "E [ipv4.totalLen]";
+        }
+        break;
+        case 327 :
+        {
+          return "E [ipv4.identification]";
+        }
+        break;
+        case 328 :
+        {
+          return "E [ipv4.flags, ipv4.fragOffset]";
+        }
+        break;
+        case 329 :
+        {
+          return "E [tcp.dstPort, udp.dstPort]";
+        }
+        break;
+        case 330 :
+        {
+          return "E [tcp.seqNo[31:16]]";
+        }
+        break;
+        case 331 :
+        {
+          return "E [tcp.seqNo[15:0]]";
+        }
+        break;
+        case 332 :
+        {
+          return "E [ethernet.dstAddr[7:0], ethernet.srcAddr[47:40]]";
+        }
+        break;
+        case 333 :
+        {
+          return "E [ethernet.etherType]";
+        }
+        break;
+        case 334 :
+        {
+          return "E [packet_out_hdr.egress_port, packet_out_hdr._padding]";
+        }
+        break;
+      }
+    }
+    break;
+    case 7:
+    {
+      switch(container) {
+        case 0 :
+        {
+          return "I [POV[31:0]]";
+        }
+        break;
+        case 1 :
+        {
+          return "I [ipv4.protocol, ipv4.hdrChecksum, ipv4.srcAddr[31:24]]";
+        }
+        break;
+        case 2 :
+        {
+          return "I [ipv4.dstAddr]";
+        }
+        break;
+        case 3 :
+        {
+          return "I [ethernet.dstAddr[39:8]]";
+        }
+        break;
+        case 4 :
+        {
+          return "I [ethernet.srcAddr[31:0]]";
+        }
+        break;
+        case 5 :
+        {
+          return "I [udp.srcPort, udp.dstPort]";
+        }
+        break;
+        case 64 :
+        {
+          return "I [ig_intr_md_for_tm.copy_to_cpu]";
+        }
+        break;
+        case 65 :
+        {
+          return "I [ipv4.srcAddr[23:16]]";
+        }
+        break;
+        case 66 :
+        {
+          return "I [ethernet.dstAddr[47:40]]";
+        }
+        break;
+        case 67 :
+        {
+          return "I [ethernet.srcAddr[39:32]]";
+        }
+        break;
+        case 68 :
+        {
+          return "I [POV[39:32]]";
+        }
+        break;
+        case 69 :
+        {
+          return "I [ig_intr_md_for_tm.drop_ctl]";
+        }
+        break;
+        case 80 :
+        {
+          return "E [ig_intr_md_for_tm.copy_to_cpu]";
+        }
+        break;
+        case 81 :
+        {
+          return "E [eg_intr_md._pad7, eg_intr_md.egress_cos]";
+        }
+        break;
+        case 82 :
+        {
+          return "E [POV[7:0]]";
+        }
+        break;
+        case 128 :
+        {
+          return "I [ig_intr_md.resubmit_flag, ig_intr_md._pad1, ig_intr_md._pad2, ig_intr_md._pad3, ig_intr_md.ingress_port]";
+        }
+        break;
+        case 129 :
+        {
+          return "I [packet_out_hdr.egress_port, packet_out_hdr._padding, packet_in_hdr.ingress_port, packet_in_hdr._padding]";
+        }
+        break;
+        case 130 :
+        {
+          return "I [ig_intr_md_for_tm.ucast_egress_port]";
+        }
+        break;
+        case 131 :
+        {
+          return "I [ipv4.srcAddr[15:0]]";
+        }
+        break;
+        case 132 :
+        {
+          return "I [ethernet.dstAddr[7:0], ethernet.srcAddr[47:40]]";
+        }
+        break;
+        case 133 :
+        {
+          return "I [ethernet.etherType]";
+        }
+        break;
+        case 134 :
+        {
+          return "I [ecmp_metadata.groupId]";
+        }
+        break;
+        case 135 :
+        {
+          return "I [ecmp_metadata.selector]";
+        }
+        break;
+        case 144 :
+        {
+          return "E [ig_intr_md.ingress_port]";
+        }
+        break;
+        case 145 :
+        {
+          return "E [packet_in_hdr.ingress_port, packet_in_hdr._padding]";
+        }
+        break;
+        case 146 :
+        {
+          return "E [eg_intr_md._pad0, eg_intr_md.egress_port]";
+        }
+        break;
+        case 256 :
+        {
+          return "I [ipv4.identification[7:0], ipv4.flags, ipv4.fragOffset, ipv4.ttl]";
+        }
+        break;
+        case 257 :
+        {
+          return "I [tcp.ackNo]";
+        }
+        break;
+        case 258 :
+        {
+          return "I [tcp.dataOffset, tcp.res, tcp.ecn, tcp.ctrl, tcp.window]";
+        }
+        break;
+        case 259 :
+        {
+          return "I [tcp.checksum, tcp.urgentPtr]";
+        }
+        break;
+        case 260 :
+        {
+          return "E [ipv4.ttl, ipv4.protocol, ipv4.hdrChecksum]";
+        }
+        break;
+        case 261 :
+        {
+          return "E [ipv4.srcAddr]";
+        }
+        break;
+        case 262 :
+        {
+          return "E [ipv4.dstAddr]";
+        }
+        break;
+        case 263 :
+        {
+          return "E [tcp.ackNo, udp.length_, udp.checksum]";
+        }
+        break;
+        case 264 :
+        {
+          return "E [tcp.dataOffset, tcp.res, tcp.ecn, tcp.ctrl, tcp.window]";
+        }
+        break;
+        case 265 :
+        {
+          return "E [tcp.checksum, tcp.urgentPtr]";
+        }
+        break;
+        case 266 :
+        {
+          return "E [ethernet.dstAddr[39:8]]";
+        }
+        break;
+        case 267 :
+        {
+          return "E [ethernet.srcAddr[31:0]]";
+        }
+        break;
+        case 288 :
+        {
+          return "I [ipv4.version, ipv4.ihl]";
+        }
+        break;
+        case 289 :
+        {
+          return "I [tcp.srcPort[15:8], udp.length_[15:8]]";
+        }
+        break;
+        case 290 :
+        {
+          return "I [tcp.srcPort[7:0], udp.length_[7:0]]";
+        }
+        break;
+        case 292 :
+        {
+          return "E [ipv4.version, ipv4.ihl]";
+        }
+        break;
+        case 293 :
+        {
+          return "E [ipv4.diffserv]";
+        }
+        break;
+        case 294 :
+        {
+          return "E [tcp.srcPort[15:8], udp.srcPort[15:8]]";
+        }
+        break;
+        case 295 :
+        {
+          return "E [tcp.srcPort[7:0], udp.srcPort[7:0]]";
+        }
+        break;
+        case 296 :
+        {
+          return "E [ethernet.dstAddr[47:40]]";
+        }
+        break;
+        case 297 :
+        {
+          return "E [ethernet.srcAddr[39:32]]";
+        }
+        break;
+        case 320 :
+        {
+          return "I [ipv4.diffserv, ipv4.totalLen[15:8]]";
+        }
+        break;
+        case 321 :
+        {
+          return "I [ipv4.totalLen[7:0], ipv4.identification[15:8]]";
+        }
+        break;
+        case 322 :
+        {
+          return "I [tcp.dstPort, udp.checksum]";
+        }
+        break;
+        case 323 :
+        {
+          return "I [tcp.seqNo[31:16]]";
+        }
+        break;
+        case 324 :
+        {
+          return "I [tcp.seqNo[15:0]]";
+        }
+        break;
+        case 326 :
+        {
+          return "E [ipv4.totalLen]";
+        }
+        break;
+        case 327 :
+        {
+          return "E [ipv4.identification]";
+        }
+        break;
+        case 328 :
+        {
+          return "E [ipv4.flags, ipv4.fragOffset]";
+        }
+        break;
+        case 329 :
+        {
+          return "E [tcp.dstPort, udp.dstPort]";
+        }
+        break;
+        case 330 :
+        {
+          return "E [tcp.seqNo[31:16]]";
+        }
+        break;
+        case 331 :
+        {
+          return "E [tcp.seqNo[15:0]]";
+        }
+        break;
+        case 332 :
+        {
+          return "E [ethernet.dstAddr[7:0], ethernet.srcAddr[47:40]]";
+        }
+        break;
+        case 333 :
+        {
+          return "E [ethernet.etherType]";
+        }
+        break;
+        case 334 :
+        {
+          return "E [packet_out_hdr.egress_port, packet_out_hdr._padding]";
+        }
+        break;
+      }
+    }
+    break;
+    case 8:
+    {
+      switch(container) {
+        case 0 :
+        {
+          return "I [POV[31:0]]";
+        }
+        break;
+        case 1 :
+        {
+          return "I [ipv4.protocol, ipv4.hdrChecksum, ipv4.srcAddr[31:24]]";
+        }
+        break;
+        case 2 :
+        {
+          return "I [ipv4.dstAddr]";
+        }
+        break;
+        case 3 :
+        {
+          return "I [ethernet.dstAddr[39:8]]";
+        }
+        break;
+        case 4 :
+        {
+          return "I [ethernet.srcAddr[31:0]]";
+        }
+        break;
+        case 5 :
+        {
+          return "I [udp.srcPort, udp.dstPort]";
+        }
+        break;
+        case 64 :
+        {
+          return "I [ig_intr_md_for_tm.copy_to_cpu]";
+        }
+        break;
+        case 65 :
+        {
+          return "I [ipv4.srcAddr[23:16]]";
+        }
+        break;
+        case 66 :
+        {
+          return "I [ethernet.dstAddr[47:40]]";
+        }
+        break;
+        case 67 :
+        {
+          return "I [ethernet.srcAddr[39:32]]";
+        }
+        break;
+        case 68 :
+        {
+          return "I [POV[39:32]]";
+        }
+        break;
+        case 69 :
+        {
+          return "I [ig_intr_md_for_tm.drop_ctl]";
+        }
+        break;
+        case 80 :
+        {
+          return "E [ig_intr_md_for_tm.copy_to_cpu]";
+        }
+        break;
+        case 81 :
+        {
+          return "E [eg_intr_md._pad7, eg_intr_md.egress_cos]";
+        }
+        break;
+        case 82 :
+        {
+          return "E [POV[7:0]]";
+        }
+        break;
+        case 128 :
+        {
+          return "I [ig_intr_md.resubmit_flag, ig_intr_md._pad1, ig_intr_md._pad2, ig_intr_md._pad3, ig_intr_md.ingress_port]";
+        }
+        break;
+        case 129 :
+        {
+          return "I [packet_out_hdr.egress_port, packet_out_hdr._padding, packet_in_hdr.ingress_port, packet_in_hdr._padding]";
+        }
+        break;
+        case 130 :
+        {
+          return "I [ig_intr_md_for_tm.ucast_egress_port]";
+        }
+        break;
+        case 131 :
+        {
+          return "I [ipv4.srcAddr[15:0]]";
+        }
+        break;
+        case 132 :
+        {
+          return "I [ethernet.dstAddr[7:0], ethernet.srcAddr[47:40]]";
+        }
+        break;
+        case 133 :
+        {
+          return "I [ethernet.etherType]";
+        }
+        break;
+        case 134 :
+        {
+          return "I [ecmp_metadata.groupId]";
+        }
+        break;
+        case 135 :
+        {
+          return "I [ecmp_metadata.selector]";
+        }
+        break;
+        case 144 :
+        {
+          return "E [ig_intr_md.ingress_port]";
+        }
+        break;
+        case 145 :
+        {
+          return "E [packet_in_hdr.ingress_port, packet_in_hdr._padding]";
+        }
+        break;
+        case 146 :
+        {
+          return "E [eg_intr_md._pad0, eg_intr_md.egress_port]";
+        }
+        break;
+        case 256 :
+        {
+          return "I [ipv4.identification[7:0], ipv4.flags, ipv4.fragOffset, ipv4.ttl]";
+        }
+        break;
+        case 257 :
+        {
+          return "I [tcp.ackNo]";
+        }
+        break;
+        case 258 :
+        {
+          return "I [tcp.dataOffset, tcp.res, tcp.ecn, tcp.ctrl, tcp.window]";
+        }
+        break;
+        case 259 :
+        {
+          return "I [tcp.checksum, tcp.urgentPtr]";
+        }
+        break;
+        case 260 :
+        {
+          return "E [ipv4.ttl, ipv4.protocol, ipv4.hdrChecksum]";
+        }
+        break;
+        case 261 :
+        {
+          return "E [ipv4.srcAddr]";
+        }
+        break;
+        case 262 :
+        {
+          return "E [ipv4.dstAddr]";
+        }
+        break;
+        case 263 :
+        {
+          return "E [tcp.ackNo, udp.length_, udp.checksum]";
+        }
+        break;
+        case 264 :
+        {
+          return "E [tcp.dataOffset, tcp.res, tcp.ecn, tcp.ctrl, tcp.window]";
+        }
+        break;
+        case 265 :
+        {
+          return "E [tcp.checksum, tcp.urgentPtr]";
+        }
+        break;
+        case 266 :
+        {
+          return "E [ethernet.dstAddr[39:8]]";
+        }
+        break;
+        case 267 :
+        {
+          return "E [ethernet.srcAddr[31:0]]";
+        }
+        break;
+        case 288 :
+        {
+          return "I [ipv4.version, ipv4.ihl]";
+        }
+        break;
+        case 289 :
+        {
+          return "I [tcp.srcPort[15:8], udp.length_[15:8]]";
+        }
+        break;
+        case 290 :
+        {
+          return "I [tcp.srcPort[7:0], udp.length_[7:0]]";
+        }
+        break;
+        case 292 :
+        {
+          return "E [ipv4.version, ipv4.ihl]";
+        }
+        break;
+        case 293 :
+        {
+          return "E [ipv4.diffserv]";
+        }
+        break;
+        case 294 :
+        {
+          return "E [tcp.srcPort[15:8], udp.srcPort[15:8]]";
+        }
+        break;
+        case 295 :
+        {
+          return "E [tcp.srcPort[7:0], udp.srcPort[7:0]]";
+        }
+        break;
+        case 296 :
+        {
+          return "E [ethernet.dstAddr[47:40]]";
+        }
+        break;
+        case 297 :
+        {
+          return "E [ethernet.srcAddr[39:32]]";
+        }
+        break;
+        case 320 :
+        {
+          return "I [ipv4.diffserv, ipv4.totalLen[15:8]]";
+        }
+        break;
+        case 321 :
+        {
+          return "I [ipv4.totalLen[7:0], ipv4.identification[15:8]]";
+        }
+        break;
+        case 322 :
+        {
+          return "I [tcp.dstPort, udp.checksum]";
+        }
+        break;
+        case 323 :
+        {
+          return "I [tcp.seqNo[31:16]]";
+        }
+        break;
+        case 324 :
+        {
+          return "I [tcp.seqNo[15:0]]";
+        }
+        break;
+        case 326 :
+        {
+          return "E [ipv4.totalLen]";
+        }
+        break;
+        case 327 :
+        {
+          return "E [ipv4.identification]";
+        }
+        break;
+        case 328 :
+        {
+          return "E [ipv4.flags, ipv4.fragOffset]";
+        }
+        break;
+        case 329 :
+        {
+          return "E [tcp.dstPort, udp.dstPort]";
+        }
+        break;
+        case 330 :
+        {
+          return "E [tcp.seqNo[31:16]]";
+        }
+        break;
+        case 331 :
+        {
+          return "E [tcp.seqNo[15:0]]";
+        }
+        break;
+        case 332 :
+        {
+          return "E [ethernet.dstAddr[7:0], ethernet.srcAddr[47:40]]";
+        }
+        break;
+        case 333 :
+        {
+          return "E [ethernet.etherType]";
+        }
+        break;
+        case 334 :
+        {
+          return "E [packet_out_hdr.egress_port, packet_out_hdr._padding]";
+        }
+        break;
+      }
+    }
+    break;
+    case 9:
+    {
+      switch(container) {
+        case 0 :
+        {
+          return "I [POV[31:0]]";
+        }
+        break;
+        case 1 :
+        {
+          return "I [ipv4.protocol, ipv4.hdrChecksum, ipv4.srcAddr[31:24]]";
+        }
+        break;
+        case 2 :
+        {
+          return "I [ipv4.dstAddr]";
+        }
+        break;
+        case 3 :
+        {
+          return "I [ethernet.dstAddr[39:8]]";
+        }
+        break;
+        case 4 :
+        {
+          return "I [ethernet.srcAddr[31:0]]";
+        }
+        break;
+        case 5 :
+        {
+          return "I [udp.srcPort, udp.dstPort]";
+        }
+        break;
+        case 64 :
+        {
+          return "I [ig_intr_md_for_tm.copy_to_cpu]";
+        }
+        break;
+        case 65 :
+        {
+          return "I [ipv4.srcAddr[23:16]]";
+        }
+        break;
+        case 66 :
+        {
+          return "I [ethernet.dstAddr[47:40]]";
+        }
+        break;
+        case 67 :
+        {
+          return "I [ethernet.srcAddr[39:32]]";
+        }
+        break;
+        case 68 :
+        {
+          return "I [POV[39:32]]";
+        }
+        break;
+        case 69 :
+        {
+          return "I [ig_intr_md_for_tm.drop_ctl]";
+        }
+        break;
+        case 80 :
+        {
+          return "E [ig_intr_md_for_tm.copy_to_cpu]";
+        }
+        break;
+        case 81 :
+        {
+          return "E [eg_intr_md._pad7, eg_intr_md.egress_cos]";
+        }
+        break;
+        case 82 :
+        {
+          return "E [POV[7:0]]";
+        }
+        break;
+        case 128 :
+        {
+          return "I [ig_intr_md.resubmit_flag, ig_intr_md._pad1, ig_intr_md._pad2, ig_intr_md._pad3, ig_intr_md.ingress_port]";
+        }
+        break;
+        case 129 :
+        {
+          return "I [packet_out_hdr.egress_port, packet_out_hdr._padding, packet_in_hdr.ingress_port, packet_in_hdr._padding]";
+        }
+        break;
+        case 130 :
+        {
+          return "I [ig_intr_md_for_tm.ucast_egress_port]";
+        }
+        break;
+        case 131 :
+        {
+          return "I [ipv4.srcAddr[15:0]]";
+        }
+        break;
+        case 132 :
+        {
+          return "I [ethernet.dstAddr[7:0], ethernet.srcAddr[47:40]]";
+        }
+        break;
+        case 133 :
+        {
+          return "I [ethernet.etherType]";
+        }
+        break;
+        case 134 :
+        {
+          return "I [ecmp_metadata.groupId]";
+        }
+        break;
+        case 135 :
+        {
+          return "I [ecmp_metadata.selector]";
+        }
+        break;
+        case 144 :
+        {
+          return "E [ig_intr_md.ingress_port]";
+        }
+        break;
+        case 145 :
+        {
+          return "E [packet_in_hdr.ingress_port, packet_in_hdr._padding]";
+        }
+        break;
+        case 146 :
+        {
+          return "E [eg_intr_md._pad0, eg_intr_md.egress_port]";
+        }
+        break;
+        case 256 :
+        {
+          return "I [ipv4.identification[7:0], ipv4.flags, ipv4.fragOffset, ipv4.ttl]";
+        }
+        break;
+        case 257 :
+        {
+          return "I [tcp.ackNo]";
+        }
+        break;
+        case 258 :
+        {
+          return "I [tcp.dataOffset, tcp.res, tcp.ecn, tcp.ctrl, tcp.window]";
+        }
+        break;
+        case 259 :
+        {
+          return "I [tcp.checksum, tcp.urgentPtr]";
+        }
+        break;
+        case 260 :
+        {
+          return "E [ipv4.ttl, ipv4.protocol, ipv4.hdrChecksum]";
+        }
+        break;
+        case 261 :
+        {
+          return "E [ipv4.srcAddr]";
+        }
+        break;
+        case 262 :
+        {
+          return "E [ipv4.dstAddr]";
+        }
+        break;
+        case 263 :
+        {
+          return "E [tcp.ackNo, udp.length_, udp.checksum]";
+        }
+        break;
+        case 264 :
+        {
+          return "E [tcp.dataOffset, tcp.res, tcp.ecn, tcp.ctrl, tcp.window]";
+        }
+        break;
+        case 265 :
+        {
+          return "E [tcp.checksum, tcp.urgentPtr]";
+        }
+        break;
+        case 266 :
+        {
+          return "E [ethernet.dstAddr[39:8]]";
+        }
+        break;
+        case 267 :
+        {
+          return "E [ethernet.srcAddr[31:0]]";
+        }
+        break;
+        case 288 :
+        {
+          return "I [ipv4.version, ipv4.ihl]";
+        }
+        break;
+        case 289 :
+        {
+          return "I [tcp.srcPort[15:8], udp.length_[15:8]]";
+        }
+        break;
+        case 290 :
+        {
+          return "I [tcp.srcPort[7:0], udp.length_[7:0]]";
+        }
+        break;
+        case 292 :
+        {
+          return "E [ipv4.version, ipv4.ihl]";
+        }
+        break;
+        case 293 :
+        {
+          return "E [ipv4.diffserv]";
+        }
+        break;
+        case 294 :
+        {
+          return "E [tcp.srcPort[15:8], udp.srcPort[15:8]]";
+        }
+        break;
+        case 295 :
+        {
+          return "E [tcp.srcPort[7:0], udp.srcPort[7:0]]";
+        }
+        break;
+        case 296 :
+        {
+          return "E [ethernet.dstAddr[47:40]]";
+        }
+        break;
+        case 297 :
+        {
+          return "E [ethernet.srcAddr[39:32]]";
+        }
+        break;
+        case 320 :
+        {
+          return "I [ipv4.diffserv, ipv4.totalLen[15:8]]";
+        }
+        break;
+        case 321 :
+        {
+          return "I [ipv4.totalLen[7:0], ipv4.identification[15:8]]";
+        }
+        break;
+        case 322 :
+        {
+          return "I [tcp.dstPort, udp.checksum]";
+        }
+        break;
+        case 323 :
+        {
+          return "I [tcp.seqNo[31:16]]";
+        }
+        break;
+        case 324 :
+        {
+          return "I [tcp.seqNo[15:0]]";
+        }
+        break;
+        case 326 :
+        {
+          return "E [ipv4.totalLen]";
+        }
+        break;
+        case 327 :
+        {
+          return "E [ipv4.identification]";
+        }
+        break;
+        case 328 :
+        {
+          return "E [ipv4.flags, ipv4.fragOffset]";
+        }
+        break;
+        case 329 :
+        {
+          return "E [tcp.dstPort, udp.dstPort]";
+        }
+        break;
+        case 330 :
+        {
+          return "E [tcp.seqNo[31:16]]";
+        }
+        break;
+        case 331 :
+        {
+          return "E [tcp.seqNo[15:0]]";
+        }
+        break;
+        case 332 :
+        {
+          return "E [ethernet.dstAddr[7:0], ethernet.srcAddr[47:40]]";
+        }
+        break;
+        case 333 :
+        {
+          return "E [ethernet.etherType]";
+        }
+        break;
+        case 334 :
+        {
+          return "E [packet_out_hdr.egress_port, packet_out_hdr._padding]";
+        }
+        break;
+      }
+    }
+    break;
+    case 10:
+    {
+      switch(container) {
+        case 0 :
+        {
+          return "I [POV[31:0]]";
+        }
+        break;
+        case 1 :
+        {
+          return "I [ipv4.protocol, ipv4.hdrChecksum, ipv4.srcAddr[31:24]]";
+        }
+        break;
+        case 2 :
+        {
+          return "I [ipv4.dstAddr]";
+        }
+        break;
+        case 3 :
+        {
+          return "I [ethernet.dstAddr[39:8]]";
+        }
+        break;
+        case 4 :
+        {
+          return "I [ethernet.srcAddr[31:0]]";
+        }
+        break;
+        case 5 :
+        {
+          return "I [udp.srcPort, udp.dstPort]";
+        }
+        break;
+        case 64 :
+        {
+          return "I [ig_intr_md_for_tm.copy_to_cpu]";
+        }
+        break;
+        case 65 :
+        {
+          return "I [ipv4.srcAddr[23:16]]";
+        }
+        break;
+        case 66 :
+        {
+          return "I [ethernet.dstAddr[47:40]]";
+        }
+        break;
+        case 67 :
+        {
+          return "I [ethernet.srcAddr[39:32]]";
+        }
+        break;
+        case 68 :
+        {
+          return "I [POV[39:32]]";
+        }
+        break;
+        case 69 :
+        {
+          return "I [ig_intr_md_for_tm.drop_ctl]";
+        }
+        break;
+        case 80 :
+        {
+          return "E [ig_intr_md_for_tm.copy_to_cpu]";
+        }
+        break;
+        case 81 :
+        {
+          return "E [eg_intr_md._pad7, eg_intr_md.egress_cos]";
+        }
+        break;
+        case 82 :
+        {
+          return "E [POV[7:0]]";
+        }
+        break;
+        case 128 :
+        {
+          return "I [ig_intr_md.resubmit_flag, ig_intr_md._pad1, ig_intr_md._pad2, ig_intr_md._pad3, ig_intr_md.ingress_port]";
+        }
+        break;
+        case 129 :
+        {
+          return "I [packet_out_hdr.egress_port, packet_out_hdr._padding, packet_in_hdr.ingress_port, packet_in_hdr._padding]";
+        }
+        break;
+        case 130 :
+        {
+          return "I [ig_intr_md_for_tm.ucast_egress_port]";
+        }
+        break;
+        case 131 :
+        {
+          return "I [ipv4.srcAddr[15:0]]";
+        }
+        break;
+        case 132 :
+        {
+          return "I [ethernet.dstAddr[7:0], ethernet.srcAddr[47:40]]";
+        }
+        break;
+        case 133 :
+        {
+          return "I [ethernet.etherType]";
+        }
+        break;
+        case 134 :
+        {
+          return "I [ecmp_metadata.groupId]";
+        }
+        break;
+        case 135 :
+        {
+          return "I [ecmp_metadata.selector]";
+        }
+        break;
+        case 144 :
+        {
+          return "E [ig_intr_md.ingress_port]";
+        }
+        break;
+        case 145 :
+        {
+          return "E [packet_in_hdr.ingress_port, packet_in_hdr._padding]";
+        }
+        break;
+        case 146 :
+        {
+          return "E [eg_intr_md._pad0, eg_intr_md.egress_port]";
+        }
+        break;
+        case 256 :
+        {
+          return "I [ipv4.identification[7:0], ipv4.flags, ipv4.fragOffset, ipv4.ttl]";
+        }
+        break;
+        case 257 :
+        {
+          return "I [tcp.ackNo]";
+        }
+        break;
+        case 258 :
+        {
+          return "I [tcp.dataOffset, tcp.res, tcp.ecn, tcp.ctrl, tcp.window]";
+        }
+        break;
+        case 259 :
+        {
+          return "I [tcp.checksum, tcp.urgentPtr]";
+        }
+        break;
+        case 260 :
+        {
+          return "E [ipv4.ttl, ipv4.protocol, ipv4.hdrChecksum]";
+        }
+        break;
+        case 261 :
+        {
+          return "E [ipv4.srcAddr]";
+        }
+        break;
+        case 262 :
+        {
+          return "E [ipv4.dstAddr]";
+        }
+        break;
+        case 263 :
+        {
+          return "E [tcp.ackNo, udp.length_, udp.checksum]";
+        }
+        break;
+        case 264 :
+        {
+          return "E [tcp.dataOffset, tcp.res, tcp.ecn, tcp.ctrl, tcp.window]";
+        }
+        break;
+        case 265 :
+        {
+          return "E [tcp.checksum, tcp.urgentPtr]";
+        }
+        break;
+        case 266 :
+        {
+          return "E [ethernet.dstAddr[39:8]]";
+        }
+        break;
+        case 267 :
+        {
+          return "E [ethernet.srcAddr[31:0]]";
+        }
+        break;
+        case 288 :
+        {
+          return "I [ipv4.version, ipv4.ihl]";
+        }
+        break;
+        case 289 :
+        {
+          return "I [tcp.srcPort[15:8], udp.length_[15:8]]";
+        }
+        break;
+        case 290 :
+        {
+          return "I [tcp.srcPort[7:0], udp.length_[7:0]]";
+        }
+        break;
+        case 292 :
+        {
+          return "E [ipv4.version, ipv4.ihl]";
+        }
+        break;
+        case 293 :
+        {
+          return "E [ipv4.diffserv]";
+        }
+        break;
+        case 294 :
+        {
+          return "E [tcp.srcPort[15:8], udp.srcPort[15:8]]";
+        }
+        break;
+        case 295 :
+        {
+          return "E [tcp.srcPort[7:0], udp.srcPort[7:0]]";
+        }
+        break;
+        case 296 :
+        {
+          return "E [ethernet.dstAddr[47:40]]";
+        }
+        break;
+        case 297 :
+        {
+          return "E [ethernet.srcAddr[39:32]]";
+        }
+        break;
+        case 320 :
+        {
+          return "I [ipv4.diffserv, ipv4.totalLen[15:8]]";
+        }
+        break;
+        case 321 :
+        {
+          return "I [ipv4.totalLen[7:0], ipv4.identification[15:8]]";
+        }
+        break;
+        case 322 :
+        {
+          return "I [tcp.dstPort, udp.checksum]";
+        }
+        break;
+        case 323 :
+        {
+          return "I [tcp.seqNo[31:16]]";
+        }
+        break;
+        case 324 :
+        {
+          return "I [tcp.seqNo[15:0]]";
+        }
+        break;
+        case 326 :
+        {
+          return "E [ipv4.totalLen]";
+        }
+        break;
+        case 327 :
+        {
+          return "E [ipv4.identification]";
+        }
+        break;
+        case 328 :
+        {
+          return "E [ipv4.flags, ipv4.fragOffset]";
+        }
+        break;
+        case 329 :
+        {
+          return "E [tcp.dstPort, udp.dstPort]";
+        }
+        break;
+        case 330 :
+        {
+          return "E [tcp.seqNo[31:16]]";
+        }
+        break;
+        case 331 :
+        {
+          return "E [tcp.seqNo[15:0]]";
+        }
+        break;
+        case 332 :
+        {
+          return "E [ethernet.dstAddr[7:0], ethernet.srcAddr[47:40]]";
+        }
+        break;
+        case 333 :
+        {
+          return "E [ethernet.etherType]";
+        }
+        break;
+        case 334 :
+        {
+          return "E [packet_out_hdr.egress_port, packet_out_hdr._padding]";
+        }
+        break;
+      }
+    }
+    break;
+    case 11:
+    {
+      switch(container) {
+        case 0 :
+        {
+          return "I [POV[31:0]]";
+        }
+        break;
+        case 1 :
+        {
+          return "I [ipv4.protocol, ipv4.hdrChecksum, ipv4.srcAddr[31:24]]";
+        }
+        break;
+        case 2 :
+        {
+          return "I [ipv4.dstAddr]";
+        }
+        break;
+        case 3 :
+        {
+          return "I [ethernet.dstAddr[39:8]]";
+        }
+        break;
+        case 4 :
+        {
+          return "I [ethernet.srcAddr[31:0]]";
+        }
+        break;
+        case 5 :
+        {
+          return "I [udp.srcPort, udp.dstPort]";
+        }
+        break;
+        case 64 :
+        {
+          return "I [ig_intr_md_for_tm.copy_to_cpu]";
+        }
+        break;
+        case 65 :
+        {
+          return "I [ipv4.srcAddr[23:16]]";
+        }
+        break;
+        case 66 :
+        {
+          return "I [ethernet.dstAddr[47:40]]";
+        }
+        break;
+        case 67 :
+        {
+          return "I [ethernet.srcAddr[39:32]]";
+        }
+        break;
+        case 68 :
+        {
+          return "I [POV[39:32]]";
+        }
+        break;
+        case 69 :
+        {
+          return "I [ig_intr_md_for_tm.drop_ctl]";
+        }
+        break;
+        case 80 :
+        {
+          return "E [ig_intr_md_for_tm.copy_to_cpu]";
+        }
+        break;
+        case 81 :
+        {
+          return "E [eg_intr_md._pad7, eg_intr_md.egress_cos]";
+        }
+        break;
+        case 82 :
+        {
+          return "E [POV[7:0]]";
+        }
+        break;
+        case 128 :
+        {
+          return "I [ig_intr_md.resubmit_flag, ig_intr_md._pad1, ig_intr_md._pad2, ig_intr_md._pad3, ig_intr_md.ingress_port]";
+        }
+        break;
+        case 129 :
+        {
+          return "I [packet_out_hdr.egress_port, packet_out_hdr._padding, packet_in_hdr.ingress_port, packet_in_hdr._padding]";
+        }
+        break;
+        case 130 :
+        {
+          return "I [ig_intr_md_for_tm.ucast_egress_port]";
+        }
+        break;
+        case 131 :
+        {
+          return "I [ipv4.srcAddr[15:0]]";
+        }
+        break;
+        case 132 :
+        {
+          return "I [ethernet.dstAddr[7:0], ethernet.srcAddr[47:40]]";
+        }
+        break;
+        case 133 :
+        {
+          return "I [ethernet.etherType]";
+        }
+        break;
+        case 134 :
+        {
+          return "I [ecmp_metadata.groupId]";
+        }
+        break;
+        case 135 :
+        {
+          return "I [ecmp_metadata.selector]";
+        }
+        break;
+        case 144 :
+        {
+          return "E [ig_intr_md.ingress_port]";
+        }
+        break;
+        case 145 :
+        {
+          return "E [packet_in_hdr.ingress_port, packet_in_hdr._padding]";
+        }
+        break;
+        case 146 :
+        {
+          return "E [eg_intr_md._pad0, eg_intr_md.egress_port]";
+        }
+        break;
+        case 256 :
+        {
+          return "I [ipv4.identification[7:0], ipv4.flags, ipv4.fragOffset, ipv4.ttl]";
+        }
+        break;
+        case 257 :
+        {
+          return "I [tcp.ackNo]";
+        }
+        break;
+        case 258 :
+        {
+          return "I [tcp.dataOffset, tcp.res, tcp.ecn, tcp.ctrl, tcp.window]";
+        }
+        break;
+        case 259 :
+        {
+          return "I [tcp.checksum, tcp.urgentPtr]";
+        }
+        break;
+        case 260 :
+        {
+          return "E [ipv4.ttl, ipv4.protocol, ipv4.hdrChecksum]";
+        }
+        break;
+        case 261 :
+        {
+          return "E [ipv4.srcAddr]";
+        }
+        break;
+        case 262 :
+        {
+          return "E [ipv4.dstAddr]";
+        }
+        break;
+        case 263 :
+        {
+          return "E [tcp.ackNo, udp.length_, udp.checksum]";
+        }
+        break;
+        case 264 :
+        {
+          return "E [tcp.dataOffset, tcp.res, tcp.ecn, tcp.ctrl, tcp.window]";
+        }
+        break;
+        case 265 :
+        {
+          return "E [tcp.checksum, tcp.urgentPtr]";
+        }
+        break;
+        case 266 :
+        {
+          return "E [ethernet.dstAddr[39:8]]";
+        }
+        break;
+        case 267 :
+        {
+          return "E [ethernet.srcAddr[31:0]]";
+        }
+        break;
+        case 288 :
+        {
+          return "I [ipv4.version, ipv4.ihl]";
+        }
+        break;
+        case 289 :
+        {
+          return "I [tcp.srcPort[15:8], udp.length_[15:8]]";
+        }
+        break;
+        case 290 :
+        {
+          return "I [tcp.srcPort[7:0], udp.length_[7:0]]";
+        }
+        break;
+        case 292 :
+        {
+          return "E [ipv4.version, ipv4.ihl]";
+        }
+        break;
+        case 293 :
+        {
+          return "E [ipv4.diffserv]";
+        }
+        break;
+        case 294 :
+        {
+          return "E [tcp.srcPort[15:8], udp.srcPort[15:8]]";
+        }
+        break;
+        case 295 :
+        {
+          return "E [tcp.srcPort[7:0], udp.srcPort[7:0]]";
+        }
+        break;
+        case 296 :
+        {
+          return "E [ethernet.dstAddr[47:40]]";
+        }
+        break;
+        case 297 :
+        {
+          return "E [ethernet.srcAddr[39:32]]";
+        }
+        break;
+        case 320 :
+        {
+          return "I [ipv4.diffserv, ipv4.totalLen[15:8]]";
+        }
+        break;
+        case 321 :
+        {
+          return "I [ipv4.totalLen[7:0], ipv4.identification[15:8]]";
+        }
+        break;
+        case 322 :
+        {
+          return "I [tcp.dstPort, udp.checksum]";
+        }
+        break;
+        case 323 :
+        {
+          return "I [tcp.seqNo[31:16]]";
+        }
+        break;
+        case 324 :
+        {
+          return "I [tcp.seqNo[15:0]]";
+        }
+        break;
+        case 326 :
+        {
+          return "E [ipv4.totalLen]";
+        }
+        break;
+        case 327 :
+        {
+          return "E [ipv4.identification]";
+        }
+        break;
+        case 328 :
+        {
+          return "E [ipv4.flags, ipv4.fragOffset]";
+        }
+        break;
+        case 329 :
+        {
+          return "E [tcp.dstPort, udp.dstPort]";
+        }
+        break;
+        case 330 :
+        {
+          return "E [tcp.seqNo[31:16]]";
+        }
+        break;
+        case 331 :
+        {
+          return "E [tcp.seqNo[15:0]]";
+        }
+        break;
+        case 332 :
+        {
+          return "E [ethernet.dstAddr[7:0], ethernet.srcAddr[47:40]]";
+        }
+        break;
+        case 333 :
+        {
+          return "E [ethernet.etherType]";
+        }
+        break;
+        case 334 :
+        {
+          return "E [packet_out_hdr.egress_port, packet_out_hdr._padding]";
+        }
+        break;
+      }
+    }
+    break;
+  }
+    
+  return "PHV container not valid";
+}
+
+