Refactor fabric.p4 INT support to allow compilation on more P4 targets

Also use constant entries for instruction mask tables to avoid
programming them at runtime.

Change-Id: Ia1ab1ecd42a433daec171f9a30bcdba3b8484061
diff --git a/pipelines/fabric/src/main/resources/p4c-out/fabric-full/bmv2/default/bmv2.json b/pipelines/fabric/src/main/resources/p4c-out/fabric-full/bmv2/default/bmv2.json
index 40f5a60..246401b 100644
--- a/pipelines/fabric/src/main/resources/p4c-out/fabric-full/bmv2/default/bmv2.json
+++ b/pipelines/fabric/src/main/resources/p4c-out/fabric-full/bmv2/default/bmv2.json
@@ -4,13 +4,12 @@
       "name" : "scalars_0",
       "id" : 0,
       "fields" : [
+        ["last_ipv4_dscp", 6, false],
         ["tmp", 4, false],
-        ["tmp_0", 1, false],
+        ["tmp_0", 8, false],
         ["tmp_1", 32, false],
-        ["tmp_2", 8, false],
-        ["tmp_3", 1, false],
-        ["tmp_4", 32, false],
-        ["tmp_5", 32, false],
+        ["tmp_2", 32, false],
+        ["tmp_3", 32, false],
         ["spgw_ingress_tmp_1", 1, false],
         ["spgw_ingress_tmp_2", 1, false],
         ["filtering_tmp_0", 1, false],
@@ -20,6 +19,7 @@
         ["spgw_normalizer_hasReturned_0", 1, false],
         ["spgw_ingress_hasReturned_0", 1, false],
         ["next_hasReturned_0", 1, false],
+        ["process_int_main_process_int_transit_hasReturned_0", 1, false],
         ["fabric_metadata_t.fwd_type", 3, false],
         ["fabric_metadata_t.next_id", 32, false],
         ["fabric_metadata_t.pop_vlan_when_packet_in", 1, false],
@@ -29,8 +29,7 @@
         ["fabric_metadata_t.ip_proto", 8, false],
         ["fabric_metadata_t.l4_src_port", 16, false],
         ["fabric_metadata_t.l4_dst_port", 16, false],
-        ["fabric_metadata_t.compute_checksum", 1, false],
-        ["_padding_2", 1, false]
+        ["_padding_2", 5, false]
       ]
     },
     {
@@ -219,42 +218,18 @@
       ]
     },
     {
-      "name" : "drop_report_header_t",
-      "id" : 15,
-      "fields" : [
-        ["switch_id", 32, false],
-        ["ingress_port_id", 16, false],
-        ["egress_port_id", 16, false],
-        ["queue_id", 8, false],
-        ["drop_reason", 8, false],
-        ["pad", 16, false]
-      ]
-    },
-    {
-      "name" : "local_report_header_t",
-      "id" : 16,
-      "fields" : [
-        ["switch_id", 32, false],
-        ["ingress_port_id", 16, false],
-        ["egress_port_id", 16, false],
-        ["queue_id", 8, false],
-        ["queue_occupancy", 24, false],
-        ["egress_tstamp", 32, false]
-      ]
-    },
-    {
       "name" : "intl4_shim_t",
-      "id" : 17,
+      "id" : 15,
       "fields" : [
         ["int_type", 8, false],
         ["rsvd1", 8, false],
-        ["len", 8, false],
+        ["len_words", 8, false],
         ["rsvd2", 8, false]
       ]
     },
     {
       "name" : "int_header_t",
-      "id" : 18,
+      "id" : 16,
       "fields" : [
         ["ver", 2, false],
         ["rep", 2, false],
@@ -272,23 +247,15 @@
       ]
     },
     {
-      "name" : "int_data_t",
-      "id" : 19,
-      "fields" : [
-        ["data", "*"]
-      ],
-      "max_length" : 1004
-    },
-    {
       "name" : "int_switch_id_t",
-      "id" : 20,
+      "id" : 17,
       "fields" : [
         ["switch_id", 32, false]
       ]
     },
     {
       "name" : "int_port_ids_t",
-      "id" : 21,
+      "id" : 18,
       "fields" : [
         ["ingress_port_id", 16, false],
         ["egress_port_id", 16, false]
@@ -296,14 +263,14 @@
     },
     {
       "name" : "int_hop_latency_t",
-      "id" : 22,
+      "id" : 19,
       "fields" : [
         ["hop_latency", 32, false]
       ]
     },
     {
       "name" : "int_q_occupancy_t",
-      "id" : 23,
+      "id" : 20,
       "fields" : [
         ["q_id", 8, false],
         ["q_occupancy", 24, false]
@@ -311,21 +278,21 @@
     },
     {
       "name" : "int_ingress_tstamp_t",
-      "id" : 24,
+      "id" : 21,
       "fields" : [
         ["ingress_tstamp", 32, false]
       ]
     },
     {
       "name" : "int_egress_tstamp_t",
-      "id" : 25,
+      "id" : 22,
       "fields" : [
         ["egress_tstamp", 32, false]
       ]
     },
     {
       "name" : "int_q_congestion_t",
-      "id" : 26,
+      "id" : 23,
       "fields" : [
         ["q_id", 8, false],
         ["q_congestion", 24, false]
@@ -333,23 +300,32 @@
     },
     {
       "name" : "int_egress_port_tx_util_t",
-      "id" : 27,
+      "id" : 24,
       "fields" : [
         ["egress_port_tx_util", 32, false]
       ]
     },
     {
+      "name" : "int_data_t",
+      "id" : 25,
+      "fields" : [
+        ["data", "*"]
+      ],
+      "max_length" : 1004
+    },
+    {
       "name" : "intl4_tail_t",
-      "id" : 28,
+      "id" : 26,
       "fields" : [
         ["next_proto", 8, false],
         ["dest_port", 16, false],
-        ["dscp", 8, false]
+        ["padding", 2, false],
+        ["dscp", 6, false]
       ]
     },
     {
       "name" : "spgw_meta_t",
-      "id" : 29,
+      "id" : 27,
       "fields" : [
         ["direction", 2, false],
         ["ipv4_len", 16, false],
@@ -361,16 +337,15 @@
     },
     {
       "name" : "int_metadata_t",
-      "id" : 30,
+      "id" : 28,
       "fields" : [
+        ["source", 1, 0],
+        ["transit", 1, 0],
+        ["sink", 1, 0],
         ["switch_id", 32, false],
-        ["insert_byte_cnt", 16, false],
-        ["source", 1, false],
-        ["sink", 1, false],
-        ["mirror_id", 8, false],
-        ["flow_id", 16, false],
-        ["metadata_len", 8, false],
-        ["_padding_1", 6, false]
+        ["new_words", 8, false],
+        ["new_bytes", 16, false],
+        ["_padding_1", 5, false]
       ]
     }
   ],
@@ -530,138 +505,107 @@
       "pi_omit" : true
     },
     {
-      "name" : "report_local.drop_report_header",
-      "id" : 22,
-      "header_type" : "drop_report_header_t",
-      "metadata" : false,
-      "pi_omit" : true
-    },
-    {
-      "name" : "report_local.local_report_header",
-      "id" : 23,
-      "header_type" : "local_report_header_t",
-      "metadata" : false,
-      "pi_omit" : true
-    },
-    {
       "name" : "intl4_shim",
-      "id" : 24,
+      "id" : 22,
       "header_type" : "intl4_shim_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
       "name" : "int_header",
-      "id" : 25,
+      "id" : 23,
       "header_type" : "int_header_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
-      "name" : "int_data",
-      "id" : 26,
-      "header_type" : "int_data_t",
-      "metadata" : false,
-      "pi_omit" : true
-    },
-    {
       "name" : "int_switch_id",
-      "id" : 27,
+      "id" : 24,
       "header_type" : "int_switch_id_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
       "name" : "int_port_ids",
-      "id" : 28,
+      "id" : 25,
       "header_type" : "int_port_ids_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
       "name" : "int_hop_latency",
-      "id" : 29,
+      "id" : 26,
       "header_type" : "int_hop_latency_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
       "name" : "int_q_occupancy",
-      "id" : 30,
+      "id" : 27,
       "header_type" : "int_q_occupancy_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
       "name" : "int_ingress_tstamp",
-      "id" : 31,
+      "id" : 28,
       "header_type" : "int_ingress_tstamp_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
       "name" : "int_egress_tstamp",
-      "id" : 32,
+      "id" : 29,
       "header_type" : "int_egress_tstamp_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
       "name" : "int_q_congestion",
-      "id" : 33,
+      "id" : 30,
       "header_type" : "int_q_congestion_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
       "name" : "int_egress_tx_util",
-      "id" : 34,
+      "id" : 31,
       "header_type" : "int_egress_port_tx_util_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
+      "name" : "int_data",
+      "id" : 32,
+      "header_type" : "int_data_t",
+      "metadata" : false,
+      "pi_omit" : true
+    },
+    {
       "name" : "intl4_tail",
-      "id" : 35,
+      "id" : 33,
       "header_type" : "intl4_tail_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
       "name" : "userMetadata.spgw",
-      "id" : 36,
+      "id" : 34,
       "header_type" : "spgw_meta_t",
       "metadata" : true,
       "pi_omit" : true
     },
     {
       "name" : "userMetadata.int_meta",
-      "id" : 37,
+      "id" : 35,
       "header_type" : "int_metadata_t",
       "metadata" : true,
       "pi_omit" : true
     }
   ],
   "header_stacks" : [],
-  "header_union_types" : [
-    {
-      "name" : "local_report_t",
-      "id" : 0,
-      "headers" : [
-        ["drop_report_header", "drop_report_header_t"],
-        ["local_report_header", "local_report_header_t"]
-      ]
-    }
-  ],
-  "header_unions" : [
-    {
-      "name" : "report_local",
-      "id" : 0,
-      "union_type" : "local_report_t",
-      "header_ids" : [22, 23],
-      "pi_omit" : true
-    }
-  ],
+  "header_union_types" : [],
+  "header_unions" : [],
   "header_union_stacks" : [],
   "field_lists" : [
     {
@@ -681,7 +625,21 @@
         {
           "name" : "start",
           "id" : 0,
-          "parser_ops" : [],
+          "parser_ops" : [
+            {
+              "parameters" : [
+                {
+                  "type" : "field",
+                  "value" : ["scalars", "last_ipv4_dscp"]
+                },
+                {
+                  "type" : "hexstr",
+                  "value" : "0x00"
+                }
+              ],
+              "op" : "set"
+            }
+          ],
           "transitions" : [
             {
               "type" : "hexstr",
@@ -913,6 +871,19 @@
                 }
               ],
               "op" : "set"
+            },
+            {
+              "parameters" : [
+                {
+                  "type" : "field",
+                  "value" : ["scalars", "last_ipv4_dscp"]
+                },
+                {
+                  "type" : "field",
+                  "value" : ["ipv4", "dscp"]
+                }
+              ],
+              "op" : "set"
             }
           ],
           "transitions" : [
@@ -1067,94 +1038,16 @@
                 }
               ],
               "op" : "set"
-            },
-            {
-              "parameters" : [
-                {
-                  "type" : "field",
-                  "value" : ["scalars", "tmp_0"]
-                },
-                {
-                  "type" : "expression",
-                  "value" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "?",
-                      "left" : {
-                        "type" : "hexstr",
-                        "value" : "0x01"
-                      },
-                      "right" : {
-                        "type" : "hexstr",
-                        "value" : "0x00"
-                      },
-                      "cond" : {
-                        "type" : "expression",
-                        "value" : {
-                          "op" : "and",
-                          "left" : {
-                            "type" : "expression",
-                            "value" : {
-                              "op" : "d2b",
-                              "left" : null,
-                              "right" : {
-                                "type" : "field",
-                                "value" : ["ipv4", "$valid$"]
-                              }
-                            }
-                          },
-                          "right" : {
-                            "type" : "expression",
-                            "value" : {
-                              "op" : "==",
-                              "left" : {
-                                "type" : "expression",
-                                "value" : {
-                                  "op" : "&",
-                                  "left" : {
-                                    "type" : "field",
-                                    "value" : ["ipv4", "dscp"]
-                                  },
-                                  "right" : {
-                                    "type" : "hexstr",
-                                    "value" : "0x01"
-                                  }
-                                }
-                              },
-                              "right" : {
-                                "type" : "hexstr",
-                                "value" : "0x01"
-                              }
-                            }
-                          }
-                        }
-                      }
-                    }
-                  }
-                }
-              ],
-              "op" : "set"
             }
           ],
           "transitions" : [
             {
-              "type" : "hexstr",
-              "value" : "0x01",
-              "mask" : null,
-              "next_state" : "parse_intl4_shim"
-            },
-            {
               "value" : "default",
               "mask" : null,
-              "next_state" : null
+              "next_state" : "parse_int"
             }
           ],
-          "transition_key" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "tmp_0"]
-            }
-          ]
+          "transition_key" : []
         },
         {
           "name" : "parse_udp",
@@ -1206,7 +1099,7 @@
             {
               "value" : "default",
               "mask" : null,
-              "next_state" : null
+              "next_state" : "parse_int"
             }
           ],
           "transition_key" : [
@@ -1240,212 +1133,14 @@
           "transition_key" : []
         },
         {
-          "name" : "parse_intl4_shim",
+          "name" : "parse_gtpu",
           "id" : 11,
           "parser_ops" : [
             {
               "parameters" : [
                 {
-                  "type" : "regular",
-                  "value" : "intl4_shim"
-                }
-              ],
-              "op" : "extract"
-            },
-            {
-              "parameters" : [
-                {
-                  "type" : "regular",
-                  "value" : "int_header"
-                }
-              ],
-              "op" : "extract"
-            },
-            {
-              "parameters" : [
-                {
                   "type" : "field",
-                  "value" : ["userMetadata.int_meta", "metadata_len"]
-                },
-                {
-                  "type" : "expression",
-                  "value" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "&",
-                      "left" : {
-                        "type" : "expression",
-                        "value" : {
-                          "op" : "+",
-                          "left" : {
-                            "type" : "field",
-                            "value" : ["intl4_shim", "len"]
-                          },
-                          "right" : {
-                            "type" : "hexstr",
-                            "value" : "0xfc"
-                          }
-                        }
-                      },
-                      "right" : {
-                        "type" : "hexstr",
-                        "value" : "0xff"
-                      }
-                    }
-                  }
-                }
-              ],
-              "op" : "set"
-            }
-          ],
-          "transitions" : [
-            {
-              "type" : "hexstr",
-              "value" : "0x00",
-              "mask" : null,
-              "next_state" : "parse_intl4_tail"
-            },
-            {
-              "value" : "default",
-              "mask" : null,
-              "next_state" : "parse_int_data"
-            }
-          ],
-          "transition_key" : [
-            {
-              "type" : "field",
-              "value" : ["userMetadata.int_meta", "metadata_len"]
-            }
-          ]
-        },
-        {
-          "name" : "parse_int_data",
-          "id" : 12,
-          "parser_ops" : [
-            {
-              "parameters" : [
-                {
-                  "type" : "field",
-                  "value" : ["scalars", "tmp_1"]
-                },
-                {
-                  "type" : "expression",
-                  "value" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "&",
-                      "left" : {
-                        "type" : "expression",
-                        "value" : {
-                          "op" : "&",
-                          "left" : {
-                            "type" : "expression",
-                            "value" : {
-                              "op" : "<<",
-                              "left" : {
-                                "type" : "expression",
-                                "value" : {
-                                  "op" : "&",
-                                  "left" : {
-                                    "type" : "expression",
-                                    "value" : {
-                                      "op" : "+",
-                                      "left" : {
-                                        "type" : "field",
-                                        "value" : ["intl4_shim", "len"]
-                                      },
-                                      "right" : {
-                                        "type" : "hexstr",
-                                        "value" : "0xfc"
-                                      }
-                                    }
-                                  },
-                                  "right" : {
-                                    "type" : "hexstr",
-                                    "value" : "0xff"
-                                  }
-                                }
-                              },
-                              "right" : {
-                                "type" : "hexstr",
-                                "value" : "0x5"
-                              }
-                            }
-                          },
-                          "right" : {
-                            "type" : "hexstr",
-                            "value" : "0xff"
-                          }
-                        }
-                      },
-                      "right" : {
-                        "type" : "hexstr",
-                        "value" : "0xffffffff"
-                      }
-                    }
-                  }
-                }
-              ],
-              "op" : "set"
-            },
-            {
-              "parameters" : [
-                {
-                  "type" : "regular",
-                  "value" : "int_data"
-                },
-                {
-                  "type" : "expression",
-                  "value" : {
-                    "type" : "field",
-                    "value" : ["scalars", "tmp_1"]
-                  }
-                }
-              ],
-              "op" : "extract_VL"
-            }
-          ],
-          "transitions" : [
-            {
-              "value" : "default",
-              "mask" : null,
-              "next_state" : "parse_intl4_tail"
-            }
-          ],
-          "transition_key" : []
-        },
-        {
-          "name" : "parse_intl4_tail",
-          "id" : 13,
-          "parser_ops" : [
-            {
-              "parameters" : [
-                {
-                  "type" : "regular",
-                  "value" : "intl4_tail"
-                }
-              ],
-              "op" : "extract"
-            }
-          ],
-          "transitions" : [
-            {
-              "value" : "default",
-              "mask" : null,
-              "next_state" : null
-            }
-          ],
-          "transition_key" : []
-        },
-        {
-          "name" : "parse_gtpu",
-          "id" : 14,
-          "parser_ops" : [
-            {
-              "parameters" : [
-                {
-                  "type" : "field",
-                  "value" : ["scalars", "tmp_2"]
+                  "value" : ["scalars", "tmp_0"]
                 },
                 {
                   "type" : "expression",
@@ -1504,13 +1199,13 @@
           "transition_key" : [
             {
               "type" : "field",
-              "value" : ["scalars", "tmp_2"]
+              "value" : ["scalars", "tmp_0"]
             }
           ]
         },
         {
           "name" : "do_parse_gtpu",
-          "id" : 15,
+          "id" : 12,
           "parser_ops" : [
             {
               "parameters" : [
@@ -1529,6 +1224,19 @@
                 }
               ],
               "op" : "extract"
+            },
+            {
+              "parameters" : [
+                {
+                  "type" : "field",
+                  "value" : ["scalars", "last_ipv4_dscp"]
+                },
+                {
+                  "type" : "field",
+                  "value" : ["inner_ipv4", "dscp"]
+                }
+              ],
+              "op" : "set"
             }
           ],
           "transitions" : [
@@ -1565,7 +1273,7 @@
         },
         {
           "name" : "parse_inner_udp",
-          "id" : 16,
+          "id" : 13,
           "parser_ops" : [
             {
               "parameters" : [
@@ -1601,80 +1309,26 @@
                 }
               ],
               "op" : "set"
-            },
-            {
-              "parameters" : [
-                {
-                  "type" : "field",
-                  "value" : ["scalars", "tmp_3"]
-                },
-                {
-                  "type" : "expression",
-                  "value" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "?",
-                      "left" : {
-                        "type" : "hexstr",
-                        "value" : "0x01"
-                      },
-                      "right" : {
-                        "type" : "hexstr",
-                        "value" : "0x00"
-                      },
-                      "cond" : {
-                        "type" : "expression",
-                        "value" : {
-                          "op" : "and",
-                          "left" : {
-                            "type" : "expression",
-                            "value" : {
-                              "op" : "d2b",
-                              "left" : null,
-                              "right" : {
-                                "type" : "field",
-                                "value" : ["ipv4", "$valid$"]
-                              }
-                            }
-                          },
-                          "right" : {
-                            "type" : "expression",
-                            "value" : {
-                              "op" : "==",
-                              "left" : {
-                                "type" : "expression",
-                                "value" : {
-                                  "op" : "&",
-                                  "left" : {
-                                    "type" : "field",
-                                    "value" : ["ipv4", "dscp"]
-                                  },
-                                  "right" : {
-                                    "type" : "hexstr",
-                                    "value" : "0x01"
-                                  }
-                                }
-                              },
-                              "right" : {
-                                "type" : "hexstr",
-                                "value" : "0x01"
-                              }
-                            }
-                          }
-                        }
-                      }
-                    }
-                  }
-                }
-              ],
-              "op" : "set"
             }
           ],
           "transitions" : [
             {
+              "value" : "default",
+              "mask" : null,
+              "next_state" : "parse_int"
+            }
+          ],
+          "transition_key" : []
+        },
+        {
+          "name" : "parse_int",
+          "id" : 14,
+          "parser_ops" : [],
+          "transitions" : [
+            {
               "type" : "hexstr",
               "value" : "0x01",
-              "mask" : null,
+              "mask" : "0x01",
               "next_state" : "parse_intl4_shim"
             },
             {
@@ -1686,9 +1340,171 @@
           "transition_key" : [
             {
               "type" : "field",
-              "value" : ["scalars", "tmp_3"]
+              "value" : ["scalars", "last_ipv4_dscp"]
             }
           ]
+        },
+        {
+          "name" : "parse_intl4_shim",
+          "id" : 15,
+          "parser_ops" : [
+            {
+              "parameters" : [
+                {
+                  "type" : "regular",
+                  "value" : "intl4_shim"
+                }
+              ],
+              "op" : "extract"
+            },
+            {
+              "parameters" : [
+                {
+                  "type" : "regular",
+                  "value" : "int_header"
+                }
+              ],
+              "op" : "extract"
+            }
+          ],
+          "transitions" : [
+            {
+              "type" : "hexstr",
+              "value" : "0x04",
+              "mask" : null,
+              "next_state" : "parse_intl4_tail"
+            },
+            {
+              "value" : "default",
+              "mask" : null,
+              "next_state" : "parse_int_data"
+            }
+          ],
+          "transition_key" : [
+            {
+              "type" : "field",
+              "value" : ["intl4_shim", "len_words"]
+            }
+          ]
+        },
+        {
+          "name" : "parse_int_data",
+          "id" : 16,
+          "parser_ops" : [
+            {
+              "parameters" : [
+                {
+                  "type" : "field",
+                  "value" : ["scalars", "tmp_1"]
+                },
+                {
+                  "type" : "expression",
+                  "value" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "&",
+                      "left" : {
+                        "type" : "expression",
+                        "value" : {
+                          "op" : "<<",
+                          "left" : {
+                            "type" : "expression",
+                            "value" : {
+                              "op" : "&",
+                              "left" : {
+                                "type" : "expression",
+                                "value" : {
+                                  "op" : "&",
+                                  "left" : {
+                                    "type" : "expression",
+                                    "value" : {
+                                      "op" : "+",
+                                      "left" : {
+                                        "type" : "field",
+                                        "value" : ["intl4_shim", "len_words"]
+                                      },
+                                      "right" : {
+                                        "type" : "hexstr",
+                                        "value" : "0xfc"
+                                      }
+                                    }
+                                  },
+                                  "right" : {
+                                    "type" : "hexstr",
+                                    "value" : "0xff"
+                                  }
+                                }
+                              },
+                              "right" : {
+                                "type" : "hexstr",
+                                "value" : "0xffffffff"
+                              }
+                            }
+                          },
+                          "right" : {
+                            "type" : "hexstr",
+                            "value" : "0x5"
+                          }
+                        }
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0xffffffff"
+                      }
+                    }
+                  }
+                }
+              ],
+              "op" : "set"
+            },
+            {
+              "parameters" : [
+                {
+                  "type" : "regular",
+                  "value" : "int_data"
+                },
+                {
+                  "type" : "expression",
+                  "value" : {
+                    "type" : "field",
+                    "value" : ["scalars", "tmp_1"]
+                  }
+                }
+              ],
+              "op" : "extract_VL"
+            }
+          ],
+          "transitions" : [
+            {
+              "value" : "default",
+              "mask" : null,
+              "next_state" : "parse_intl4_tail"
+            }
+          ],
+          "transition_key" : []
+        },
+        {
+          "name" : "parse_intl4_tail",
+          "id" : 17,
+          "parser_ops" : [
+            {
+              "parameters" : [
+                {
+                  "type" : "regular",
+                  "value" : "intl4_tail"
+                }
+              ],
+              "op" : "extract"
+            }
+          ],
+          "transitions" : [
+            {
+              "value" : "default",
+              "mask" : null,
+              "next_state" : null
+            }
+          ],
+          "transition_key" : []
         }
       ]
     }
@@ -1700,7 +1516,7 @@
       "id" : 0,
       "source_info" : {
         "filename" : "include/parser.p4",
-        "line" : 223,
+        "line" : 228,
         "column" : 8,
         "source_fragment" : "FabricDeparser"
       },
@@ -1818,32 +1634,14 @@
       "is_direct" : false
     },
     {
-      "name" : "FabricEgress.process_int_source.counter_int_source",
+      "name" : "FabricEgress.process_int_main.process_int_source.counter_int_source",
       "id" : 16,
       "is_direct" : true,
-      "binding" : "FabricEgress.process_int_source.tb_int_source"
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.counter_int_insert",
-      "id" : 17,
-      "is_direct" : true,
-      "binding" : "FabricEgress.process_int_transit.tb_int_insert"
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.counter_int_inst_0003",
-      "id" : 18,
-      "is_direct" : true,
-      "binding" : "FabricEgress.process_int_transit.tb_int_inst_0003"
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.counter_int_inst_0407",
-      "id" : 19,
-      "is_direct" : true,
-      "binding" : "FabricEgress.process_int_transit.tb_int_inst_0407"
+      "binding" : "FabricEgress.process_int_main.process_int_source.tb_int_source"
     },
     {
       "name" : "FabricEgress.egress_next.egress_vlan_counter",
-      "id" : 20,
+      "id" : 17,
       "is_direct" : true,
       "binding" : "FabricEgress.egress_next.egress_vlan"
     }
@@ -2277,15 +2075,25 @@
               "value" : ["userMetadata.int_meta", "source"]
             },
             {
-              "type" : "hexstr",
-              "value" : "0x01"
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "b2d",
+                  "left" : null,
+                  "right" : {
+                    "type" : "bool",
+                    "value" : true
+                  }
+                }
+              }
             }
           ],
           "source_info" : {
-            "filename" : "include/int_source.p4",
-            "line" : 94,
+            "filename" : "include/int/int_main.p4",
+            "line" : 42,
             "column" : 8,
-            "source_fragment" : "fabric_metadata.int_meta.source = 1"
+            "source_fragment" : "fabric_metadata.int_meta.source = true"
           }
         }
       ]
@@ -2303,15 +2111,25 @@
               "value" : ["userMetadata.int_meta", "sink"]
             },
             {
-              "type" : "hexstr",
-              "value" : "0x01"
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "b2d",
+                  "left" : null,
+                  "right" : {
+                    "type" : "bool",
+                    "value" : true
+                  }
+                }
+              }
             }
           ],
           "source_info" : {
-            "filename" : "include/int_source.p4",
-            "line" : 98,
+            "filename" : "include/int/int_main.p4",
+            "line" : 61,
             "column" : 8,
-            "source_fragment" : "fabric_metadata.int_meta.sink = 1"
+            "source_fragment" : "fabric_metadata.int_meta.sink = true"
           }
         }
       ]
@@ -2460,7 +2278,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 89,
+            "line" : 91,
             "column" : 31,
             "source_fragment" : "0x8100; ..."
           }
@@ -3124,7 +2942,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 90,
+            "line" : 92,
             "column" : 31,
             "source_fragment" : "0x8847; ..."
           }
@@ -3200,7 +3018,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 113,
+            "line" : 115,
             "column" : 32,
             "source_fragment" : "64; ..."
           }
@@ -3315,7 +3133,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 90,
+            "line" : 92,
             "column" : 31,
             "source_fragment" : "0x8847; ..."
           }
@@ -3391,7 +3209,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 113,
+            "line" : 115,
             "column" : 32,
             "source_fragment" : "64; ..."
           }
@@ -3683,7 +3501,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 90,
+            "line" : 92,
             "column" : 31,
             "source_fragment" : "0x8847; ..."
           }
@@ -3759,7 +3577,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 113,
+            "line" : 115,
             "column" : 32,
             "source_fragment" : "64; ..."
           }
@@ -3874,7 +3692,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 90,
+            "line" : 92,
             "column" : 31,
             "source_fragment" : "0x8847; ..."
           }
@@ -3950,7 +3768,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 113,
+            "line" : 115,
             "column" : 32,
             "source_fragment" : "64; ..."
           }
@@ -4068,7 +3886,7 @@
           ],
           "source_info" : {
             "filename" : "fabric.p4",
-            "line" : 57,
+            "line" : 54,
             "column" : 50,
             "source_fragment" : "hdr.gtpu_ipv4"
           }
@@ -4083,7 +3901,7 @@
           ],
           "source_info" : {
             "filename" : "fabric.p4",
-            "line" : 57,
+            "line" : 54,
             "column" : 65,
             "source_fragment" : "hdr.gtpu_udp"
           }
@@ -4374,7 +4192,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 119,
+            "line" : 121,
             "column" : 36,
             "source_fragment" : "2w1; ..."
           }
@@ -4460,7 +4278,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 120,
+            "line" : 122,
             "column" : 38,
             "source_fragment" : "2w2; ..."
           }
@@ -4486,7 +4304,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 118,
+            "line" : 120,
             "column" : 37,
             "source_fragment" : "2w0; ..."
           }
@@ -4657,7 +4475,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 109,
+            "line" : 111,
             "column" : 31,
             "source_fragment" : "7; ..."
           }
@@ -4683,7 +4501,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 92,
+            "line" : 94,
             "column" : 31,
             "source_fragment" : "0x0800; ..."
           }
@@ -5044,7 +4862,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "tmp_4"]
+              "value" : ["scalars", "tmp_2"]
             },
             {
               "type" : "expression",
@@ -5080,7 +4898,7 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "tmp_4"]
+              "value" : ["scalars", "tmp_2"]
             }
           ],
           "source_info" : {
@@ -5102,7 +4920,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "tmp_5"]
+              "value" : ["scalars", "tmp_3"]
             },
             {
               "type" : "expression",
@@ -5138,7 +4956,7 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "tmp_5"]
+              "value" : ["scalars", "tmp_3"]
             }
           ],
           "source_info" : {
@@ -5313,7 +5131,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 101,
+            "line" : 103,
             "column" : 28,
             "source_fragment" : "5; ..."
           }
@@ -5469,7 +5287,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 114,
+            "line" : 116,
             "column" : 32,
             "source_fragment" : "64; ..."
           }
@@ -5488,7 +5306,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 98,
+            "line" : 100,
             "column" : 25,
             "source_fragment" : "17; ..."
           }
@@ -5853,7 +5671,7 @@
       ]
     },
     {
-      "name" : "FabricEgress.process_int_source.int_source_dscp",
+      "name" : "FabricEgress.process_int_main.process_int_source.int_source_dscp",
       "id" : 84,
       "runtime_data" : [
         {
@@ -5883,7 +5701,7 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_source.p4",
+            "filename" : "include/int/int_source.p4",
             "line" : 31,
             "column" : 8,
             "source_fragment" : "hdr.intl4_shim.setValid()"
@@ -5902,7 +5720,7 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_source.p4",
+            "filename" : "include/int/int_source.p4",
             "line" : 33,
             "column" : 8,
             "source_fragment" : "hdr.intl4_shim.int_type = 1"
@@ -5913,7 +5731,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["intl4_shim", "len"]
+              "value" : ["intl4_shim", "len_words"]
             },
             {
               "type" : "hexstr",
@@ -5922,8 +5740,8 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 127,
-            "column" : 35,
+            "line" : 131,
+            "column" : 36,
             "source_fragment" : "4; ..."
           }
         },
@@ -5936,8 +5754,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_source.p4",
-            "line" : 37,
+            "filename" : "include/int/int_source.p4",
+            "line" : 36,
             "column" : 8,
             "source_fragment" : "hdr.int_header.setValid()"
           }
@@ -5955,8 +5773,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_source.p4",
-            "line" : 38,
+            "filename" : "include/int/int_source.p4",
+            "line" : 37,
             "column" : 8,
             "source_fragment" : "hdr.int_header.ver = 0"
           }
@@ -5974,8 +5792,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_source.p4",
-            "line" : 39,
+            "filename" : "include/int/int_source.p4",
+            "line" : 38,
             "column" : 8,
             "source_fragment" : "hdr.int_header.rep = 0"
           }
@@ -5993,8 +5811,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_source.p4",
-            "line" : 40,
+            "filename" : "include/int/int_source.p4",
+            "line" : 39,
             "column" : 8,
             "source_fragment" : "hdr.int_header.c = 0"
           }
@@ -6012,8 +5830,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_source.p4",
-            "line" : 41,
+            "filename" : "include/int/int_source.p4",
+            "line" : 40,
             "column" : 8,
             "source_fragment" : "hdr.int_header.e = 0"
           }
@@ -6031,8 +5849,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_source.p4",
-            "line" : 42,
+            "filename" : "include/int/int_source.p4",
+            "line" : 41,
             "column" : 8,
             "source_fragment" : "hdr.int_header.rsvd1 = 0"
           }
@@ -6050,8 +5868,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_source.p4",
-            "line" : 43,
+            "filename" : "include/int/int_source.p4",
+            "line" : 42,
             "column" : 8,
             "source_fragment" : "hdr.int_header.ins_cnt = ins_cnt; ..."
           }
@@ -6069,8 +5887,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_source.p4",
-            "line" : 44,
+            "filename" : "include/int/int_source.p4",
+            "line" : 43,
             "column" : 8,
             "source_fragment" : "hdr.int_header.max_hop_cnt = max_hop; ..."
           }
@@ -6088,8 +5906,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_source.p4",
-            "line" : 45,
+            "filename" : "include/int/int_source.p4",
+            "line" : 44,
             "column" : 8,
             "source_fragment" : "hdr.int_header.total_hop_cnt = 0"
           }
@@ -6107,8 +5925,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_source.p4",
-            "line" : 46,
+            "filename" : "include/int/int_source.p4",
+            "line" : 45,
             "column" : 8,
             "source_fragment" : "hdr.int_header.instruction_mask_0003 = ins_mask0003; ..."
           }
@@ -6126,8 +5944,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_source.p4",
-            "line" : 47,
+            "filename" : "include/int/int_source.p4",
+            "line" : 46,
             "column" : 8,
             "source_fragment" : "hdr.int_header.instruction_mask_0407 = ins_mask0407; ..."
           }
@@ -6145,8 +5963,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_source.p4",
-            "line" : 48,
+            "filename" : "include/int/int_source.p4",
+            "line" : 47,
             "column" : 8,
             "source_fragment" : "hdr.int_header.instruction_mask_0811 = 0"
           }
@@ -6164,8 +5982,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_source.p4",
-            "line" : 49,
+            "filename" : "include/int/int_source.p4",
+            "line" : 48,
             "column" : 8,
             "source_fragment" : "hdr.int_header.instruction_mask_1215 = 0"
           }
@@ -6179,8 +5997,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_source.p4",
-            "line" : 52,
+            "filename" : "include/int/int_source.p4",
+            "line" : 50,
             "column" : 8,
             "source_fragment" : "hdr.intl4_tail.setValid()"
           }
@@ -6198,8 +6016,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_source.p4",
-            "line" : 53,
+            "filename" : "include/int/int_source.p4",
+            "line" : 51,
             "column" : 8,
             "source_fragment" : "hdr.intl4_tail.next_proto = hdr.ipv4.protocol"
           }
@@ -6217,8 +6035,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_source.p4",
-            "line" : 54,
+            "filename" : "include/int/int_source.p4",
+            "line" : 52,
             "column" : 8,
             "source_fragment" : "hdr.intl4_tail.dest_port = fabric_metadata.l4_dst_port"
           }
@@ -6231,28 +6049,15 @@
               "value" : ["intl4_tail", "dscp"]
             },
             {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["ipv4", "dscp"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xff"
-                  }
-                }
-              }
+              "type" : "field",
+              "value" : ["ipv4", "dscp"]
             }
           ],
           "source_info" : {
-            "filename" : "include/int_source.p4",
-            "line" : 55,
+            "filename" : "include/int/int_source.p4",
+            "line" : 53,
             "column" : 8,
-            "source_fragment" : "hdr.intl4_tail.dscp = (bit<8>) hdr.ipv4.dscp"
+            "source_fragment" : "hdr.intl4_tail.dscp = hdr.ipv4.dscp"
           }
         },
         {
@@ -6291,10 +6096,10 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_source.p4",
-            "line" : 58,
+            "filename" : "include/int/int_source.p4",
+            "line" : 55,
             "column" : 8,
-            "source_fragment" : "hdr.ipv4.total_len = hdr.ipv4.total_len + 16"
+            "source_fragment" : "hdr.ipv4.total_len = hdr.ipv4.total_len + INT_HEADER_LEN_BYTES"
           }
         },
         {
@@ -6333,10 +6138,10 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_source.p4",
-            "line" : 59,
+            "filename" : "include/int/int_source.p4",
+            "line" : 56,
             "column" : 8,
-            "source_fragment" : "hdr.udp.len = hdr.udp.len + 16"
+            "source_fragment" : "hdr.udp.len = hdr.udp.len + INT_HEADER_LEN_BYTES"
           }
         },
         {
@@ -6353,7 +6158,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 125,
+            "line" : 127,
             "column" : 24,
             "source_fragment" : "0x1; ..."
           }
@@ -6361,16 +6166,148 @@
       ]
     },
     {
-      "name" : "FabricEgress.process_int_transit.int_update_total_hop_cnt",
+      "name" : "FabricEgress.process_int_main.process_int_transit.init_metadata",
       "id" : 85,
-      "runtime_data" : [],
+      "runtime_data" : [
+        {
+          "name" : "switch_id",
+          "bitwidth" : 32
+        }
+      ],
       "primitives" : [
         {
           "op" : "assign",
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["int_header", "total_hop_cnt"]
+              "value" : ["userMetadata.int_meta", "transit"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "b2d",
+                  "left" : null,
+                  "right" : {
+                    "type" : "bool",
+                    "value" : true
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 26,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.transit = true"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "switch_id"]
+            },
+            {
+              "type" : "runtime_data",
+              "value" : 0
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 31,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.switch_id = switch_id"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0",
+      "id" : 86,
+      "runtime_data" : [],
+      "primitives" : []
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1",
+      "id" : 87,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_q_occupancy"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 56,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_occupancy.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_occupancy", "q_id"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 58,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_occupancy", "q_occupancy"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "deq_qdepth"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 59,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_words"]
             },
             {
               "type" : "expression",
@@ -6384,7 +6321,7 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["int_header", "total_hop_cnt"]
+                        "value" : ["userMetadata.int_meta", "new_words"]
                       },
                       "right" : {
                         "type" : "hexstr",
@@ -6401,41 +6338,10 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 30,
+            "filename" : "include/int/int_transit.p4",
+            "line" : 88,
             "column" : 8,
-            "source_fragment" : "hdr.int_header.total_hop_cnt = hdr.int_header.total_hop_cnt + 1"
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_transit",
-      "id" : 86,
-      "runtime_data" : [
-        {
-          "name" : "switch_id",
-          "bitwidth" : 32
-        }
-      ],
-      "primitives" : [
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["userMetadata.int_meta", "switch_id"]
-            },
-            {
-              "type" : "runtime_data",
-              "value" : 0
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 34,
-            "column" : 8,
-            "source_fragment" : "fabric_metadata.int_meta.switch_id = switch_id"
+            "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
           }
         },
         {
@@ -6443,7 +6349,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["userMetadata.int_meta", "insert_byte_cnt"]
+              "value" : ["userMetadata.int_meta", "new_bytes"]
             },
             {
               "type" : "expression",
@@ -6454,24 +6360,14 @@
                   "left" : {
                     "type" : "expression",
                     "value" : {
-                      "op" : "<<",
+                      "op" : "+",
                       "left" : {
-                        "type" : "expression",
-                        "value" : {
-                          "op" : "&",
-                          "left" : {
-                            "type" : "field",
-                            "value" : ["int_header", "ins_cnt"]
-                          },
-                          "right" : {
-                            "type" : "hexstr",
-                            "value" : "0xffff"
-                          }
-                        }
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
                       },
                       "right" : {
                         "type" : "hexstr",
-                        "value" : "0x2"
+                        "value" : "0x0004"
                       }
                     }
                   },
@@ -6484,22 +6380,16 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 35,
+            "filename" : "include/int/int_transit.p4",
+            "line" : 89,
             "column" : 8,
-            "source_fragment" : "fabric_metadata.int_meta.insert_byte_cnt = (bit<16>) hdr.int_header.ins_cnt << 2"
+            "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
           }
         }
       ]
     },
     {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0003_i0",
-      "id" : 87,
-      "runtime_data" : [],
-      "primitives" : []
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0003_i1",
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2",
       "id" : 88,
       "runtime_data" : [],
       "primitives" : [
@@ -6508,84 +6398,11 @@
           "parameters" : [
             {
               "type" : "header",
-              "value" : "int_q_occupancy"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 57,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_occupancy", "q_id"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 58,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.q_id = ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_occupancy", "q_occupancy"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "deq_qdepth"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 61,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.q_occupancy = ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0003_i2",
-      "id" : 89,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
               "value" : "int_hop_latency"
             }
           ],
           "source_info" : {
-            "filename" : "include/int_transit.p4",
+            "filename" : "include/int/int_transit.p4",
             "line" : 51,
             "column" : 8,
             "source_fragment" : "hdr.int_hop_latency.setValid()"
@@ -6604,32 +6421,10 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_transit.p4",
+            "filename" : "include/int/int_transit.p4",
             "line" : 52,
             "column" : 8,
-            "source_fragment" : "hdr.int_hop_latency.hop_latency = ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0003_i3",
-      "id" : 90,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_q_occupancy"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 57,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.setValid()"
+            "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
           }
         },
         {
@@ -6637,1903 +6432,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["int_q_occupancy", "q_id"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 58,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.q_id = ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_occupancy", "q_occupancy"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "deq_qdepth"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 61,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.q_occupancy = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_hop_latency"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 51,
-            "column" : 8,
-            "source_fragment" : "hdr.int_hop_latency.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_hop_latency", "hop_latency"]
-            },
-            {
-              "type" : "field",
-              "value" : ["standard_metadata", "deq_timedelta"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 52,
-            "column" : 8,
-            "source_fragment" : "hdr.int_hop_latency.hop_latency = ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0003_i4",
-      "id" : 91,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_port_ids"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 44,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_port_ids", "ingress_port_id"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "ingress_port"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 45,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.ingress_port_id = ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_port_ids", "egress_port_id"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "egress_port"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 47,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.egress_port_id = ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0003_i5",
-      "id" : 92,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_q_occupancy"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 57,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_occupancy", "q_id"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 58,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.q_id = ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_occupancy", "q_occupancy"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "deq_qdepth"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 61,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.q_occupancy = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_port_ids"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 44,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_port_ids", "ingress_port_id"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "ingress_port"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 45,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.ingress_port_id = ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_port_ids", "egress_port_id"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "egress_port"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 47,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.egress_port_id = ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0003_i6",
-      "id" : 93,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_hop_latency"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 51,
-            "column" : 8,
-            "source_fragment" : "hdr.int_hop_latency.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_hop_latency", "hop_latency"]
-            },
-            {
-              "type" : "field",
-              "value" : ["standard_metadata", "deq_timedelta"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 52,
-            "column" : 8,
-            "source_fragment" : "hdr.int_hop_latency.hop_latency = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_port_ids"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 44,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_port_ids", "ingress_port_id"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "ingress_port"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 45,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.ingress_port_id = ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_port_ids", "egress_port_id"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "egress_port"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 47,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.egress_port_id = ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0003_i7",
-      "id" : 94,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_q_occupancy"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 57,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_occupancy", "q_id"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 58,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.q_id = ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_occupancy", "q_occupancy"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "deq_qdepth"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 61,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.q_occupancy = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_hop_latency"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 51,
-            "column" : 8,
-            "source_fragment" : "hdr.int_hop_latency.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_hop_latency", "hop_latency"]
-            },
-            {
-              "type" : "field",
-              "value" : ["standard_metadata", "deq_timedelta"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 52,
-            "column" : 8,
-            "source_fragment" : "hdr.int_hop_latency.hop_latency = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_port_ids"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 44,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_port_ids", "ingress_port_id"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "ingress_port"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 45,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.ingress_port_id = ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_port_ids", "egress_port_id"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "egress_port"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 47,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.egress_port_id = ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0003_i8",
-      "id" : 95,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_switch_id"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 40,
-            "column" : 8,
-            "source_fragment" : "hdr.int_switch_id.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_switch_id", "switch_id"]
-            },
-            {
-              "type" : "field",
-              "value" : ["userMetadata.int_meta", "switch_id"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 41,
-            "column" : 8,
-            "source_fragment" : "hdr.int_switch_id.switch_id = fabric_metadata.int_meta.switch_id"
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0003_i9",
-      "id" : 96,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_q_occupancy"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 57,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_occupancy", "q_id"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 58,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.q_id = ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_occupancy", "q_occupancy"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "deq_qdepth"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 61,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.q_occupancy = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_switch_id"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 40,
-            "column" : 8,
-            "source_fragment" : "hdr.int_switch_id.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_switch_id", "switch_id"]
-            },
-            {
-              "type" : "field",
-              "value" : ["userMetadata.int_meta", "switch_id"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 41,
-            "column" : 8,
-            "source_fragment" : "hdr.int_switch_id.switch_id = fabric_metadata.int_meta.switch_id"
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0003_i10",
-      "id" : 97,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_hop_latency"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 51,
-            "column" : 8,
-            "source_fragment" : "hdr.int_hop_latency.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_hop_latency", "hop_latency"]
-            },
-            {
-              "type" : "field",
-              "value" : ["standard_metadata", "deq_timedelta"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 52,
-            "column" : 8,
-            "source_fragment" : "hdr.int_hop_latency.hop_latency = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_switch_id"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 40,
-            "column" : 8,
-            "source_fragment" : "hdr.int_switch_id.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_switch_id", "switch_id"]
-            },
-            {
-              "type" : "field",
-              "value" : ["userMetadata.int_meta", "switch_id"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 41,
-            "column" : 8,
-            "source_fragment" : "hdr.int_switch_id.switch_id = fabric_metadata.int_meta.switch_id"
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0003_i11",
-      "id" : 98,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_q_occupancy"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 57,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_occupancy", "q_id"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 58,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.q_id = ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_occupancy", "q_occupancy"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "deq_qdepth"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 61,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.q_occupancy = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_hop_latency"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 51,
-            "column" : 8,
-            "source_fragment" : "hdr.int_hop_latency.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_hop_latency", "hop_latency"]
-            },
-            {
-              "type" : "field",
-              "value" : ["standard_metadata", "deq_timedelta"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 52,
-            "column" : 8,
-            "source_fragment" : "hdr.int_hop_latency.hop_latency = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_switch_id"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 40,
-            "column" : 8,
-            "source_fragment" : "hdr.int_switch_id.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_switch_id", "switch_id"]
-            },
-            {
-              "type" : "field",
-              "value" : ["userMetadata.int_meta", "switch_id"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 41,
-            "column" : 8,
-            "source_fragment" : "hdr.int_switch_id.switch_id = fabric_metadata.int_meta.switch_id"
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0003_i12",
-      "id" : 99,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_port_ids"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 44,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_port_ids", "ingress_port_id"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "ingress_port"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 45,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.ingress_port_id = ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_port_ids", "egress_port_id"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "egress_port"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 47,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.egress_port_id = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_switch_id"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 40,
-            "column" : 8,
-            "source_fragment" : "hdr.int_switch_id.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_switch_id", "switch_id"]
-            },
-            {
-              "type" : "field",
-              "value" : ["userMetadata.int_meta", "switch_id"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 41,
-            "column" : 8,
-            "source_fragment" : "hdr.int_switch_id.switch_id = fabric_metadata.int_meta.switch_id"
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0003_i13",
-      "id" : 100,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_q_occupancy"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 57,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_occupancy", "q_id"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 58,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.q_id = ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_occupancy", "q_occupancy"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "deq_qdepth"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 61,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.q_occupancy = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_port_ids"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 44,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_port_ids", "ingress_port_id"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "ingress_port"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 45,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.ingress_port_id = ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_port_ids", "egress_port_id"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "egress_port"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 47,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.egress_port_id = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_switch_id"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 40,
-            "column" : 8,
-            "source_fragment" : "hdr.int_switch_id.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_switch_id", "switch_id"]
-            },
-            {
-              "type" : "field",
-              "value" : ["userMetadata.int_meta", "switch_id"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 41,
-            "column" : 8,
-            "source_fragment" : "hdr.int_switch_id.switch_id = fabric_metadata.int_meta.switch_id"
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0003_i14",
-      "id" : 101,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_hop_latency"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 51,
-            "column" : 8,
-            "source_fragment" : "hdr.int_hop_latency.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_hop_latency", "hop_latency"]
-            },
-            {
-              "type" : "field",
-              "value" : ["standard_metadata", "deq_timedelta"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 52,
-            "column" : 8,
-            "source_fragment" : "hdr.int_hop_latency.hop_latency = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_port_ids"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 44,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_port_ids", "ingress_port_id"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "ingress_port"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 45,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.ingress_port_id = ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_port_ids", "egress_port_id"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "egress_port"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 47,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.egress_port_id = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_switch_id"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 40,
-            "column" : 8,
-            "source_fragment" : "hdr.int_switch_id.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_switch_id", "switch_id"]
-            },
-            {
-              "type" : "field",
-              "value" : ["userMetadata.int_meta", "switch_id"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 41,
-            "column" : 8,
-            "source_fragment" : "hdr.int_switch_id.switch_id = fabric_metadata.int_meta.switch_id"
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0003_i15",
-      "id" : 102,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_q_occupancy"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 57,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_occupancy", "q_id"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 58,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.q_id = ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_occupancy", "q_occupancy"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "deq_qdepth"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 61,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.q_occupancy = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_hop_latency"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 51,
-            "column" : 8,
-            "source_fragment" : "hdr.int_hop_latency.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_hop_latency", "hop_latency"]
-            },
-            {
-              "type" : "field",
-              "value" : ["standard_metadata", "deq_timedelta"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 52,
-            "column" : 8,
-            "source_fragment" : "hdr.int_hop_latency.hop_latency = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_port_ids"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 44,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_port_ids", "ingress_port_id"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "ingress_port"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 45,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.ingress_port_id = ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_port_ids", "egress_port_id"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["standard_metadata", "egress_port"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 47,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.egress_port_id = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_switch_id"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 40,
-            "column" : 8,
-            "source_fragment" : "hdr.int_switch_id.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_switch_id", "switch_id"]
-            },
-            {
-              "type" : "field",
-              "value" : ["userMetadata.int_meta", "switch_id"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 41,
-            "column" : 8,
-            "source_fragment" : "hdr.int_switch_id.switch_id = fabric_metadata.int_meta.switch_id"
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0407_i0",
-      "id" : 103,
-      "runtime_data" : [],
-      "primitives" : []
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0407_i1",
-      "id" : 104,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_egress_tx_util"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 88,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tx_util.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_egress_tx_util", "egress_port_tx_util"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00000000"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 89,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0407_i2",
-      "id" : 105,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_q_congestion"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 78,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_congestion.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_congestion", "q_id"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 79,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_congestion.q_id = ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_congestion", "q_congestion"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x000000"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 82,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_congestion.q_congestion = ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0407_i3",
-      "id" : 106,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_egress_tx_util"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 88,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tx_util.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_egress_tx_util", "egress_port_tx_util"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00000000"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 89,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_q_congestion"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 78,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_congestion.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_congestion", "q_id"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 79,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_congestion.q_id = ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_congestion", "q_congestion"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x000000"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 82,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_congestion.q_congestion = ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0407_i4",
-      "id" : 107,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_egress_tstamp"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 70,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tstamp.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_egress_tstamp", "egress_tstamp"]
+              "value" : ["userMetadata.int_meta", "new_words"]
             },
             {
               "type" : "expression",
@@ -8547,1438 +6446,11 @@
                       "op" : "+",
                       "left" : {
                         "type" : "field",
-                        "value" : ["standard_metadata", "enq_timestamp"]
+                        "value" : ["userMetadata.int_meta", "new_words"]
                       },
                       "right" : {
-                        "type" : "field",
-                        "value" : ["standard_metadata", "deq_timedelta"]
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffffffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 71,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0407_i5",
-      "id" : 108,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_egress_tx_util"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 88,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tx_util.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_egress_tx_util", "egress_port_tx_util"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00000000"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 89,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_egress_tstamp"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 70,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tstamp.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_egress_tstamp", "egress_tstamp"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["standard_metadata", "enq_timestamp"]
-                      },
-                      "right" : {
-                        "type" : "field",
-                        "value" : ["standard_metadata", "deq_timedelta"]
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffffffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 71,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0407_i6",
-      "id" : 109,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_q_congestion"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 78,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_congestion.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_congestion", "q_id"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 79,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_congestion.q_id = ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_congestion", "q_congestion"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x000000"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 82,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_congestion.q_congestion = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_egress_tstamp"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 70,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tstamp.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_egress_tstamp", "egress_tstamp"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["standard_metadata", "enq_timestamp"]
-                      },
-                      "right" : {
-                        "type" : "field",
-                        "value" : ["standard_metadata", "deq_timedelta"]
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffffffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 71,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0407_i7",
-      "id" : 110,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_egress_tx_util"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 88,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tx_util.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_egress_tx_util", "egress_port_tx_util"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00000000"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 89,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_q_congestion"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 78,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_congestion.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_congestion", "q_id"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 79,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_congestion.q_id = ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_congestion", "q_congestion"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x000000"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 82,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_congestion.q_congestion = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_egress_tstamp"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 70,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tstamp.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_egress_tstamp", "egress_tstamp"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["standard_metadata", "enq_timestamp"]
-                      },
-                      "right" : {
-                        "type" : "field",
-                        "value" : ["standard_metadata", "deq_timedelta"]
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffffffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 71,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0407_i8",
-      "id" : 111,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_ingress_tstamp"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 65,
-            "column" : 8,
-            "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_ingress_tstamp", "ingress_tstamp"]
-            },
-            {
-              "type" : "field",
-              "value" : ["standard_metadata", "enq_timestamp"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 66,
-            "column" : 8,
-            "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0407_i9",
-      "id" : 112,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_egress_tx_util"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 88,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tx_util.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_egress_tx_util", "egress_port_tx_util"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00000000"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 89,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_ingress_tstamp"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 65,
-            "column" : 8,
-            "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_ingress_tstamp", "ingress_tstamp"]
-            },
-            {
-              "type" : "field",
-              "value" : ["standard_metadata", "enq_timestamp"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 66,
-            "column" : 8,
-            "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0407_i10",
-      "id" : 113,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_q_congestion"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 78,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_congestion.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_congestion", "q_id"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 79,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_congestion.q_id = ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_congestion", "q_congestion"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x000000"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 82,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_congestion.q_congestion = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_ingress_tstamp"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 65,
-            "column" : 8,
-            "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_ingress_tstamp", "ingress_tstamp"]
-            },
-            {
-              "type" : "field",
-              "value" : ["standard_metadata", "enq_timestamp"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 66,
-            "column" : 8,
-            "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0407_i11",
-      "id" : 114,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_egress_tx_util"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 88,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tx_util.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_egress_tx_util", "egress_port_tx_util"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00000000"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 89,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_q_congestion"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 78,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_congestion.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_congestion", "q_id"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 79,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_congestion.q_id = ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_congestion", "q_congestion"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x000000"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 82,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_congestion.q_congestion = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_ingress_tstamp"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 65,
-            "column" : 8,
-            "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_ingress_tstamp", "ingress_tstamp"]
-            },
-            {
-              "type" : "field",
-              "value" : ["standard_metadata", "enq_timestamp"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 66,
-            "column" : 8,
-            "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0407_i12",
-      "id" : 115,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_egress_tstamp"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 70,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tstamp.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_egress_tstamp", "egress_tstamp"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["standard_metadata", "enq_timestamp"]
-                      },
-                      "right" : {
-                        "type" : "field",
-                        "value" : ["standard_metadata", "deq_timedelta"]
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffffffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 71,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_ingress_tstamp"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 65,
-            "column" : 8,
-            "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_ingress_tstamp", "ingress_tstamp"]
-            },
-            {
-              "type" : "field",
-              "value" : ["standard_metadata", "enq_timestamp"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 66,
-            "column" : 8,
-            "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0407_i13",
-      "id" : 116,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_egress_tx_util"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 88,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tx_util.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_egress_tx_util", "egress_port_tx_util"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00000000"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 89,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_egress_tstamp"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 70,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tstamp.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_egress_tstamp", "egress_tstamp"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["standard_metadata", "enq_timestamp"]
-                      },
-                      "right" : {
-                        "type" : "field",
-                        "value" : ["standard_metadata", "deq_timedelta"]
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffffffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 71,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_ingress_tstamp"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 65,
-            "column" : 8,
-            "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_ingress_tstamp", "ingress_tstamp"]
-            },
-            {
-              "type" : "field",
-              "value" : ["standard_metadata", "enq_timestamp"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 66,
-            "column" : 8,
-            "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0407_i14",
-      "id" : 117,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_q_congestion"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 78,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_congestion.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_congestion", "q_id"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 79,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_congestion.q_id = ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_congestion", "q_congestion"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x000000"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 82,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_congestion.q_congestion = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_egress_tstamp"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 70,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tstamp.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_egress_tstamp", "egress_tstamp"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["standard_metadata", "enq_timestamp"]
-                      },
-                      "right" : {
-                        "type" : "field",
-                        "value" : ["standard_metadata", "deq_timedelta"]
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffffffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 71,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_ingress_tstamp"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 65,
-            "column" : 8,
-            "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_ingress_tstamp", "ingress_tstamp"]
-            },
-            {
-              "type" : "field",
-              "value" : ["standard_metadata", "enq_timestamp"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 66,
-            "column" : 8,
-            "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0407_i15",
-      "id" : 118,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_egress_tx_util"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 88,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tx_util.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_egress_tx_util", "egress_port_tx_util"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00000000"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 89,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_q_congestion"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 78,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_congestion.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_congestion", "q_id"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 79,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_congestion.q_id = ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_q_congestion", "q_congestion"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x000000"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 82,
-            "column" : 8,
-            "source_fragment" : "hdr.int_q_congestion.q_congestion = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_egress_tstamp"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 70,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tstamp.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_egress_tstamp", "egress_tstamp"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["standard_metadata", "enq_timestamp"]
-                      },
-                      "right" : {
-                        "type" : "field",
-                        "value" : ["standard_metadata", "deq_timedelta"]
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffffffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 71,
-            "column" : 8,
-            "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_ingress_tstamp"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 65,
-            "column" : 8,
-            "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["int_ingress_tstamp", "ingress_tstamp"]
-            },
-            {
-              "type" : "field",
-              "value" : ["standard_metadata", "enq_timestamp"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 66,
-            "column" : 8,
-            "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_outer_encap.int_update_ipv4",
-      "id" : 119,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["ipv4", "total_len"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["ipv4", "total_len"]
-                      },
-                      "right" : {
-                        "type" : "field",
-                        "value" : ["userMetadata.int_meta", "insert_byte_cnt"]
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 304,
-            "column" : 8,
-            "source_fragment" : "hdr.ipv4.total_len = hdr.ipv4.total_len + fabric_metadata.int_meta.insert_byte_cnt"
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_outer_encap.int_update_udp",
-      "id" : 120,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["udp", "len"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["udp", "len"]
-                      },
-                      "right" : {
-                        "type" : "field",
-                        "value" : ["userMetadata.int_meta", "insert_byte_cnt"]
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 307,
-            "column" : 8,
-            "source_fragment" : "hdr.udp.len = hdr.udp.len + fabric_metadata.int_meta.insert_byte_cnt"
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_outer_encap.int_update_shim",
-      "id" : 121,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["intl4_shim", "len"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "field",
-                        "value" : ["intl4_shim", "len"]
-                      },
-                      "right" : {
-                        "type" : "expression",
-                        "value" : {
-                          "op" : "&",
-                          "left" : {
-                            "type" : "field",
-                            "value" : ["int_header", "ins_cnt"]
-                          },
-                          "right" : {
-                            "type" : "hexstr",
-                            "value" : "0xff"
-                          }
-                        }
+                        "type" : "hexstr",
+                        "value" : "0x01"
                       }
                     }
                   },
@@ -9991,17 +6463,5641 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 310,
+            "filename" : "include/int/int_transit.p4",
+            "line" : 88,
             "column" : 8,
-            "source_fragment" : "hdr.intl4_shim.len = hdr.intl4_shim.len + (bit<8>)hdr.int_header.ins_cnt"
+            "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_bytes"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x0004"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 89,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
           }
         }
       ]
     },
     {
-      "name" : "FabricEgress.process_int_report.do_report_encapsulation",
-      "id" : 122,
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3",
+      "id" : 89,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_q_occupancy"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 56,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_occupancy.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_occupancy", "q_id"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 58,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_occupancy", "q_occupancy"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "deq_qdepth"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 59,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_hop_latency"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 51,
+            "column" : 8,
+            "source_fragment" : "hdr.int_hop_latency.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_hop_latency", "hop_latency"]
+            },
+            {
+              "type" : "field",
+              "value" : ["standard_metadata", "deq_timedelta"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 52,
+            "column" : 8,
+            "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_words"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_words"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x02"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 93,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_bytes"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x0008"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 94,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4",
+      "id" : 90,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_port_ids"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 45,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_port_ids", "ingress_port_id"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "ingress_port"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 46,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_port_ids", "egress_port_id"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "egress_port"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 47,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_words"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_words"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x01"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 88,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_bytes"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x0004"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 89,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5",
+      "id" : 91,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_q_occupancy"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 56,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_occupancy.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_occupancy", "q_id"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 58,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_occupancy", "q_occupancy"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "deq_qdepth"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 59,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_port_ids"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 45,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_port_ids", "ingress_port_id"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "ingress_port"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 46,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_port_ids", "egress_port_id"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "egress_port"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 47,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_words"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_words"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x02"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 93,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_bytes"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x0008"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 94,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6",
+      "id" : 92,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_hop_latency"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 51,
+            "column" : 8,
+            "source_fragment" : "hdr.int_hop_latency.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_hop_latency", "hop_latency"]
+            },
+            {
+              "type" : "field",
+              "value" : ["standard_metadata", "deq_timedelta"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 52,
+            "column" : 8,
+            "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_port_ids"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 45,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_port_ids", "ingress_port_id"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "ingress_port"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 46,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_port_ids", "egress_port_id"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "egress_port"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 47,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_words"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_words"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x02"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 93,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_bytes"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x0008"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 94,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7",
+      "id" : 93,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_q_occupancy"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 56,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_occupancy.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_occupancy", "q_id"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 58,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_occupancy", "q_occupancy"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "deq_qdepth"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 59,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_hop_latency"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 51,
+            "column" : 8,
+            "source_fragment" : "hdr.int_hop_latency.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_hop_latency", "hop_latency"]
+            },
+            {
+              "type" : "field",
+              "value" : ["standard_metadata", "deq_timedelta"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 52,
+            "column" : 8,
+            "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_port_ids"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 45,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_port_ids", "ingress_port_id"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "ingress_port"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 46,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_port_ids", "egress_port_id"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "egress_port"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 47,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_words"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_words"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x03"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 98,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_bytes"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x000c"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 99,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8",
+      "id" : 94,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_switch_id"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 40,
+            "column" : 8,
+            "source_fragment" : "hdr.int_switch_id.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_switch_id", "switch_id"]
+            },
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "switch_id"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 41,
+            "column" : 8,
+            "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_words"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_words"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x01"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 88,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_bytes"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x0004"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 89,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9",
+      "id" : 95,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_q_occupancy"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 56,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_occupancy.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_occupancy", "q_id"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 58,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_occupancy", "q_occupancy"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "deq_qdepth"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 59,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_switch_id"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 40,
+            "column" : 8,
+            "source_fragment" : "hdr.int_switch_id.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_switch_id", "switch_id"]
+            },
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "switch_id"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 41,
+            "column" : 8,
+            "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_words"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_words"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x02"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 93,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_bytes"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x0008"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 94,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10",
+      "id" : 96,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_hop_latency"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 51,
+            "column" : 8,
+            "source_fragment" : "hdr.int_hop_latency.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_hop_latency", "hop_latency"]
+            },
+            {
+              "type" : "field",
+              "value" : ["standard_metadata", "deq_timedelta"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 52,
+            "column" : 8,
+            "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_switch_id"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 40,
+            "column" : 8,
+            "source_fragment" : "hdr.int_switch_id.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_switch_id", "switch_id"]
+            },
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "switch_id"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 41,
+            "column" : 8,
+            "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_words"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_words"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x02"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 93,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_bytes"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x0008"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 94,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11",
+      "id" : 97,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_q_occupancy"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 56,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_occupancy.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_occupancy", "q_id"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 58,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_occupancy", "q_occupancy"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "deq_qdepth"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 59,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_hop_latency"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 51,
+            "column" : 8,
+            "source_fragment" : "hdr.int_hop_latency.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_hop_latency", "hop_latency"]
+            },
+            {
+              "type" : "field",
+              "value" : ["standard_metadata", "deq_timedelta"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 52,
+            "column" : 8,
+            "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_switch_id"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 40,
+            "column" : 8,
+            "source_fragment" : "hdr.int_switch_id.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_switch_id", "switch_id"]
+            },
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "switch_id"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 41,
+            "column" : 8,
+            "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_words"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_words"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x03"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 98,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_bytes"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x000c"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 99,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12",
+      "id" : 98,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_port_ids"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 45,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_port_ids", "ingress_port_id"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "ingress_port"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 46,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_port_ids", "egress_port_id"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "egress_port"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 47,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_switch_id"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 40,
+            "column" : 8,
+            "source_fragment" : "hdr.int_switch_id.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_switch_id", "switch_id"]
+            },
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "switch_id"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 41,
+            "column" : 8,
+            "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_words"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_words"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x02"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 93,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_bytes"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x0008"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 94,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13",
+      "id" : 99,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_q_occupancy"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 56,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_occupancy.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_occupancy", "q_id"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 58,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_occupancy", "q_occupancy"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "deq_qdepth"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 59,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_port_ids"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 45,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_port_ids", "ingress_port_id"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "ingress_port"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 46,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_port_ids", "egress_port_id"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "egress_port"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 47,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_switch_id"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 40,
+            "column" : 8,
+            "source_fragment" : "hdr.int_switch_id.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_switch_id", "switch_id"]
+            },
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "switch_id"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 41,
+            "column" : 8,
+            "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_words"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_words"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x03"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 98,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_bytes"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x000c"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 99,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14",
+      "id" : 100,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_hop_latency"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 51,
+            "column" : 8,
+            "source_fragment" : "hdr.int_hop_latency.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_hop_latency", "hop_latency"]
+            },
+            {
+              "type" : "field",
+              "value" : ["standard_metadata", "deq_timedelta"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 52,
+            "column" : 8,
+            "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_port_ids"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 45,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_port_ids", "ingress_port_id"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "ingress_port"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 46,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_port_ids", "egress_port_id"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "egress_port"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 47,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_switch_id"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 40,
+            "column" : 8,
+            "source_fragment" : "hdr.int_switch_id.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_switch_id", "switch_id"]
+            },
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "switch_id"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 41,
+            "column" : 8,
+            "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_words"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_words"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x03"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 98,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_bytes"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x000c"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 99,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15",
+      "id" : 101,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_q_occupancy"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 56,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_occupancy.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_occupancy", "q_id"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 58,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_occupancy", "q_occupancy"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "deq_qdepth"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 59,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_hop_latency"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 51,
+            "column" : 8,
+            "source_fragment" : "hdr.int_hop_latency.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_hop_latency", "hop_latency"]
+            },
+            {
+              "type" : "field",
+              "value" : ["standard_metadata", "deq_timedelta"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 52,
+            "column" : 8,
+            "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_port_ids"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 45,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_port_ids", "ingress_port_id"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "ingress_port"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 46,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_port_ids", "egress_port_id"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "field",
+                    "value" : ["standard_metadata", "egress_port"]
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 47,
+            "column" : 8,
+            "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_switch_id"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 40,
+            "column" : 8,
+            "source_fragment" : "hdr.int_switch_id.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_switch_id", "switch_id"]
+            },
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "switch_id"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 41,
+            "column" : 8,
+            "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_words"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_words"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x04"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 103,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 4"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_bytes"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x0010"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 104,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 16"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0",
+      "id" : 102,
+      "runtime_data" : [],
+      "primitives" : []
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1",
+      "id" : 103,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_egress_tx_util"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 80,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tx_util.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_egress_tx_util", "egress_port_tx_util"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00000000"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 82,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_words"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_words"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x01"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 88,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_bytes"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x0004"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 89,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2",
+      "id" : 104,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_q_congestion"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 73,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_congestion.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_congestion", "q_id"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 75,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_congestion", "q_congestion"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x000000"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 76,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_words"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_words"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x01"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 88,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_bytes"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x0004"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 89,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3",
+      "id" : 105,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_egress_tx_util"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 80,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tx_util.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_egress_tx_util", "egress_port_tx_util"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00000000"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 82,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_q_congestion"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 73,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_congestion.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_congestion", "q_id"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 75,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_congestion", "q_congestion"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x000000"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 76,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_words"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_words"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x02"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 93,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_bytes"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x0008"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 94,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4",
+      "id" : 106,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_egress_tstamp"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 68,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tstamp.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_egress_tstamp", "egress_tstamp"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["standard_metadata", "enq_timestamp"]
+                      },
+                      "right" : {
+                        "type" : "field",
+                        "value" : ["standard_metadata", "deq_timedelta"]
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffffffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 69,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_words"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_words"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x01"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 88,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_bytes"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x0004"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 89,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5",
+      "id" : 107,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_egress_tx_util"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 80,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tx_util.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_egress_tx_util", "egress_port_tx_util"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00000000"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 82,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_egress_tstamp"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 68,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tstamp.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_egress_tstamp", "egress_tstamp"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["standard_metadata", "enq_timestamp"]
+                      },
+                      "right" : {
+                        "type" : "field",
+                        "value" : ["standard_metadata", "deq_timedelta"]
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffffffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 69,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_words"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_words"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x02"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 93,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_bytes"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x0008"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 94,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6",
+      "id" : 108,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_q_congestion"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 73,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_congestion.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_congestion", "q_id"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 75,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_congestion", "q_congestion"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x000000"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 76,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_egress_tstamp"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 68,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tstamp.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_egress_tstamp", "egress_tstamp"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["standard_metadata", "enq_timestamp"]
+                      },
+                      "right" : {
+                        "type" : "field",
+                        "value" : ["standard_metadata", "deq_timedelta"]
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffffffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 69,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_words"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_words"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x02"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 93,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_bytes"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x0008"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 94,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7",
+      "id" : 109,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_egress_tx_util"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 80,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tx_util.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_egress_tx_util", "egress_port_tx_util"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00000000"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 82,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_q_congestion"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 73,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_congestion.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_congestion", "q_id"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 75,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_congestion", "q_congestion"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x000000"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 76,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_egress_tstamp"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 68,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tstamp.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_egress_tstamp", "egress_tstamp"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["standard_metadata", "enq_timestamp"]
+                      },
+                      "right" : {
+                        "type" : "field",
+                        "value" : ["standard_metadata", "deq_timedelta"]
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffffffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 69,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_words"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_words"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x03"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 98,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_bytes"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x000c"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 99,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8",
+      "id" : 110,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_ingress_tstamp"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 63,
+            "column" : 8,
+            "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_ingress_tstamp", "ingress_tstamp"]
+            },
+            {
+              "type" : "field",
+              "value" : ["standard_metadata", "enq_timestamp"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 64,
+            "column" : 8,
+            "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_words"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_words"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x01"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 88,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_bytes"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x0004"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 89,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9",
+      "id" : 111,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_egress_tx_util"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 80,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tx_util.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_egress_tx_util", "egress_port_tx_util"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00000000"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 82,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_ingress_tstamp"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 63,
+            "column" : 8,
+            "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_ingress_tstamp", "ingress_tstamp"]
+            },
+            {
+              "type" : "field",
+              "value" : ["standard_metadata", "enq_timestamp"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 64,
+            "column" : 8,
+            "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_words"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_words"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x02"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 93,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_bytes"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x0008"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 94,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10",
+      "id" : 112,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_q_congestion"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 73,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_congestion.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_congestion", "q_id"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 75,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_congestion", "q_congestion"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x000000"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 76,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_ingress_tstamp"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 63,
+            "column" : 8,
+            "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_ingress_tstamp", "ingress_tstamp"]
+            },
+            {
+              "type" : "field",
+              "value" : ["standard_metadata", "enq_timestamp"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 64,
+            "column" : 8,
+            "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_words"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_words"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x02"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 93,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_bytes"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x0008"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 94,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11",
+      "id" : 113,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_egress_tx_util"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 80,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tx_util.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_egress_tx_util", "egress_port_tx_util"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00000000"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 82,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_q_congestion"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 73,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_congestion.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_congestion", "q_id"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 75,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_congestion", "q_congestion"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x000000"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 76,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_ingress_tstamp"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 63,
+            "column" : 8,
+            "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_ingress_tstamp", "ingress_tstamp"]
+            },
+            {
+              "type" : "field",
+              "value" : ["standard_metadata", "enq_timestamp"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 64,
+            "column" : 8,
+            "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_words"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_words"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x03"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 98,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_bytes"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x000c"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 99,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12",
+      "id" : 114,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_egress_tstamp"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 68,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tstamp.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_egress_tstamp", "egress_tstamp"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["standard_metadata", "enq_timestamp"]
+                      },
+                      "right" : {
+                        "type" : "field",
+                        "value" : ["standard_metadata", "deq_timedelta"]
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffffffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 69,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_ingress_tstamp"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 63,
+            "column" : 8,
+            "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_ingress_tstamp", "ingress_tstamp"]
+            },
+            {
+              "type" : "field",
+              "value" : ["standard_metadata", "enq_timestamp"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 64,
+            "column" : 8,
+            "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_words"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_words"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x02"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 93,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_bytes"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x0008"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 94,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13",
+      "id" : 115,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_egress_tx_util"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 80,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tx_util.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_egress_tx_util", "egress_port_tx_util"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00000000"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 82,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_egress_tstamp"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 68,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tstamp.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_egress_tstamp", "egress_tstamp"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["standard_metadata", "enq_timestamp"]
+                      },
+                      "right" : {
+                        "type" : "field",
+                        "value" : ["standard_metadata", "deq_timedelta"]
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffffffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 69,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_ingress_tstamp"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 63,
+            "column" : 8,
+            "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_ingress_tstamp", "ingress_tstamp"]
+            },
+            {
+              "type" : "field",
+              "value" : ["standard_metadata", "enq_timestamp"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 64,
+            "column" : 8,
+            "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_words"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_words"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x03"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 98,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_bytes"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x000c"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 99,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14",
+      "id" : 116,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_q_congestion"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 73,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_congestion.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_congestion", "q_id"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 75,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_congestion", "q_congestion"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x000000"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 76,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_egress_tstamp"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 68,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tstamp.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_egress_tstamp", "egress_tstamp"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["standard_metadata", "enq_timestamp"]
+                      },
+                      "right" : {
+                        "type" : "field",
+                        "value" : ["standard_metadata", "deq_timedelta"]
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffffffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 69,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_ingress_tstamp"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 63,
+            "column" : 8,
+            "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_ingress_tstamp", "ingress_tstamp"]
+            },
+            {
+              "type" : "field",
+              "value" : ["standard_metadata", "enq_timestamp"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 64,
+            "column" : 8,
+            "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_words"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_words"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x03"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 98,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_bytes"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x000c"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 99,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15",
+      "id" : 117,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_egress_tx_util"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 80,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tx_util.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_egress_tx_util", "egress_port_tx_util"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00000000"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 82,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_q_congestion"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 73,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_congestion.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_congestion", "q_id"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 75,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_q_congestion", "q_congestion"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x000000"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 76,
+            "column" : 8,
+            "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_egress_tstamp"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 68,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tstamp.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_egress_tstamp", "egress_tstamp"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["standard_metadata", "enq_timestamp"]
+                      },
+                      "right" : {
+                        "type" : "field",
+                        "value" : ["standard_metadata", "deq_timedelta"]
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffffffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 69,
+            "column" : 8,
+            "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
+          }
+        },
+        {
+          "op" : "add_header",
+          "parameters" : [
+            {
+              "type" : "header",
+              "value" : "int_ingress_tstamp"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 63,
+            "column" : 8,
+            "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_ingress_tstamp", "ingress_tstamp"]
+            },
+            {
+              "type" : "field",
+              "value" : ["standard_metadata", "enq_timestamp"]
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 64,
+            "column" : 8,
+            "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_words"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_words"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x04"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 103,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 4"
+          }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["userMetadata.int_meta", "new_bytes"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x0010"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 104,
+            "column" : 8,
+            "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 16"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_report.do_report_encapsulation",
+      "id" : 118,
       "runtime_data" : [
         {
           "name" : "src_mac",
@@ -10034,8 +12130,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 50,
+            "filename" : "include/int/int_report.p4",
+            "line" : 49,
             "column" : 8,
             "source_fragment" : "hdr.report_ethernet.setValid()"
           }
@@ -10053,8 +12149,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 51,
+            "filename" : "include/int/int_report.p4",
+            "line" : 50,
             "column" : 8,
             "source_fragment" : "hdr.report_ethernet.dst_addr = mon_mac"
           }
@@ -10072,8 +12168,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 52,
+            "filename" : "include/int/int_report.p4",
+            "line" : 51,
             "column" : 8,
             "source_fragment" : "hdr.report_ethernet.src_addr = src_mac"
           }
@@ -10092,7 +12188,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 92,
+            "line" : 94,
             "column" : 31,
             "source_fragment" : "0x0800; ..."
           }
@@ -10106,8 +12202,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 56,
+            "filename" : "include/int/int_report.p4",
+            "line" : 55,
             "column" : 8,
             "source_fragment" : "hdr.report_ipv4.setValid()"
           }
@@ -10125,8 +12221,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 57,
+            "filename" : "include/int/int_report.p4",
+            "line" : 56,
             "column" : 8,
             "source_fragment" : "hdr.report_ipv4.version = 4w4"
           }
@@ -10144,8 +12240,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 58,
+            "filename" : "include/int/int_report.p4",
+            "line" : 57,
             "column" : 8,
             "source_fragment" : "hdr.report_ipv4.ihl = 4w5"
           }
@@ -10163,8 +12259,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 59,
+            "filename" : "include/int/int_report.p4",
+            "line" : 58,
             "column" : 8,
             "source_fragment" : "hdr.report_ipv4.dscp = 6w0"
           }
@@ -10182,8 +12278,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 60,
+            "filename" : "include/int/int_report.p4",
+            "line" : 59,
             "column" : 8,
             "source_fragment" : "hdr.report_ipv4.ecn = 2w0"
           }
@@ -10224,8 +12320,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 62,
+            "filename" : "include/int/int_report.p4",
+            "line" : 61,
             "column" : 8,
             "source_fragment" : "hdr.report_ipv4.total_len = (bit<16>) IPV4_MIN_HEAD_LEN + (bit<16>) UDP_HEADER_LEN + ..."
           }
@@ -10243,8 +12339,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 65,
+            "filename" : "include/int/int_report.p4",
+            "line" : 64,
             "column" : 8,
             "source_fragment" : "hdr.report_ipv4.identification = 0"
           }
@@ -10262,8 +12358,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 66,
+            "filename" : "include/int/int_report.p4",
+            "line" : 65,
             "column" : 8,
             "source_fragment" : "hdr.report_ipv4.flags = 0"
           }
@@ -10281,8 +12377,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 67,
+            "filename" : "include/int/int_report.p4",
+            "line" : 66,
             "column" : 8,
             "source_fragment" : "hdr.report_ipv4.frag_offset = 0"
           }
@@ -10300,8 +12396,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 68,
+            "filename" : "include/int/int_report.p4",
+            "line" : 67,
             "column" : 8,
             "source_fragment" : "hdr.report_ipv4.ttl = 0xFF"
           }
@@ -10320,7 +12416,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 98,
+            "line" : 100,
             "column" : 25,
             "source_fragment" : "17; ..."
           }
@@ -10338,8 +12434,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 70,
+            "filename" : "include/int/int_report.p4",
+            "line" : 69,
             "column" : 8,
             "source_fragment" : "hdr.report_ipv4.src_addr = src_ip"
           }
@@ -10357,8 +12453,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 71,
+            "filename" : "include/int/int_report.p4",
+            "line" : 70,
             "column" : 8,
             "source_fragment" : "hdr.report_ipv4.dst_addr = mon_ip"
           }
@@ -10372,8 +12468,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 74,
+            "filename" : "include/int/int_report.p4",
+            "line" : 73,
             "column" : 8,
             "source_fragment" : "hdr.report_udp.setValid()"
           }
@@ -10391,8 +12487,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 75,
+            "filename" : "include/int/int_report.p4",
+            "line" : 74,
             "column" : 8,
             "source_fragment" : "hdr.report_udp.src_port = 0"
           }
@@ -10410,8 +12506,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 76,
+            "filename" : "include/int/int_report.p4",
+            "line" : 75,
             "column" : 8,
             "source_fragment" : "hdr.report_udp.dst_port = mon_port"
           }
@@ -10452,42 +12548,13 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 77,
+            "filename" : "include/int/int_report.p4",
+            "line" : 76,
             "column" : 8,
             "source_fragment" : "hdr.report_udp.len = (bit<16>) UDP_HEADER_LEN + (bit<16>) REPORT_FIXED_HEADER_LEN + ..."
           }
         },
         {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["scalars", "fabric_metadata_t.compute_checksum"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "b2d",
-                  "left" : null,
-                  "right" : {
-                    "type" : "bool",
-                    "value" : true
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 80,
-            "column" : 8,
-            "source_fragment" : "fabric_metadata.compute_checksum = true"
-          }
-        },
-        {
           "op" : "add_header",
           "parameters" : [
             {
@@ -10496,7 +12563,7 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_report.p4",
+            "filename" : "include/int/int_report.p4",
             "line" : 30,
             "column" : 8,
             "source_fragment" : "hdr.report_fixed_header.setValid()"
@@ -10515,7 +12582,7 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_report.p4",
+            "filename" : "include/int/int_report.p4",
             "line" : 31,
             "column" : 8,
             "source_fragment" : "hdr.report_fixed_header.ver = 0"
@@ -10535,7 +12602,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 132,
+            "line" : 137,
             "column" : 31,
             "source_fragment" : "0; ..."
           }
@@ -10553,7 +12620,7 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_report.p4",
+            "filename" : "include/int/int_report.p4",
             "line" : 34,
             "column" : 8,
             "source_fragment" : "hdr.report_fixed_header.d = 0"
@@ -10572,7 +12639,7 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_report.p4",
+            "filename" : "include/int/int_report.p4",
             "line" : 35,
             "column" : 8,
             "source_fragment" : "hdr.report_fixed_header.q = 0"
@@ -10591,7 +12658,7 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_report.p4",
+            "filename" : "include/int/int_report.p4",
             "line" : 36,
             "column" : 8,
             "source_fragment" : "hdr.report_fixed_header.f = 1"
@@ -10610,7 +12677,7 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_report.p4",
+            "filename" : "include/int/int_report.p4",
             "line" : 37,
             "column" : 8,
             "source_fragment" : "hdr.report_fixed_header.rsvd = 0"
@@ -10630,7 +12697,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 136,
+            "line" : 141,
             "column" : 21,
             "source_fragment" : "1; ..."
           }
@@ -10648,7 +12715,7 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_report.p4",
+            "filename" : "include/int/int_report.p4",
             "line" : 41,
             "column" : 8,
             "source_fragment" : "hdr.report_fixed_header.seq_no = 0"
@@ -10667,17 +12734,17 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_report.p4",
+            "filename" : "include/int/int_report.p4",
             "line" : 43,
             "column" : 8,
-            "source_fragment" : "hdr.report_fixed_header.ingress_tstamp = ..."
+            "source_fragment" : "hdr.report_fixed_header.ingress_tstamp = (bit<32>) standard_metadata.enq_timestamp"
           }
         }
       ]
     },
     {
-      "name" : "FabricEgress.process_int_sink.restore_header",
-      "id" : 123,
+      "name" : "FabricEgress.process_int_main.process_int_sink.restore_header",
+      "id" : 119,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -10693,7 +12760,7 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_sink.p4",
+            "filename" : "include/int/int_sink.p4",
             "line" : 26,
             "column" : 8,
             "source_fragment" : "hdr.udp.dst_port = hdr.intl4_tail.dest_port"
@@ -10707,35 +12774,22 @@
               "value" : ["ipv4", "dscp"]
             },
             {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "field",
-                    "value" : ["intl4_tail", "dscp"]
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0x3f"
-                  }
-                }
-              }
+              "type" : "field",
+              "value" : ["intl4_tail", "dscp"]
             }
           ],
           "source_info" : {
-            "filename" : "include/int_sink.p4",
+            "filename" : "include/int/int_sink.p4",
             "line" : 27,
             "column" : 8,
-            "source_fragment" : "hdr.ipv4.dscp = (bit<6>)hdr.intl4_tail.dscp"
+            "source_fragment" : "hdr.ipv4.dscp = hdr.intl4_tail.dscp"
           }
         }
       ]
     },
     {
-      "name" : "FabricEgress.process_int_sink.int_sink",
-      "id" : 124,
+      "name" : "FabricEgress.process_int_main.process_int_sink.int_sink",
+      "id" : 120,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -10773,11 +12827,11 @@
                                   "op" : "<<",
                                   "left" : {
                                     "type" : "field",
-                                    "value" : ["intl4_shim", "len"]
+                                    "value" : ["intl4_shim", "len_words"]
                                   },
                                   "right" : {
                                     "type" : "hexstr",
-                                    "value" : "0x2"
+                                    "value" : "0x02"
                                   }
                                 }
                               },
@@ -10804,10 +12858,10 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_sink.p4",
-            "line" : 32,
+            "filename" : "include/int/int_sink.p4",
+            "line" : 33,
             "column" : 8,
-            "source_fragment" : "hdr.ipv4.total_len = hdr.ipv4.total_len - (bit<16>)(hdr.intl4_shim.len << 2)"
+            "source_fragment" : "hdr.ipv4.total_len = hdr.ipv4.total_len - len_bytes"
           }
         },
         {
@@ -10845,11 +12899,11 @@
                                   "op" : "<<",
                                   "left" : {
                                     "type" : "field",
-                                    "value" : ["intl4_shim", "len"]
+                                    "value" : ["intl4_shim", "len_words"]
                                   },
                                   "right" : {
                                     "type" : "hexstr",
-                                    "value" : "0x2"
+                                    "value" : "0x02"
                                   }
                                 }
                               },
@@ -10876,10 +12930,10 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_sink.p4",
-            "line" : 33,
+            "filename" : "include/int/int_sink.p4",
+            "line" : 34,
             "column" : 8,
-            "source_fragment" : "hdr.udp.len = hdr.udp.len - (bit<16>)(hdr.intl4_shim.len << 2)"
+            "source_fragment" : "hdr.udp.len = hdr.udp.len - len_bytes"
           }
         },
         {
@@ -10891,8 +12945,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_sink.p4",
-            "line" : 35,
+            "filename" : "include/int/int_sink.p4",
+            "line" : 36,
             "column" : 8,
             "source_fragment" : "hdr.int_header.setInvalid()"
           }
@@ -10906,8 +12960,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_sink.p4",
-            "line" : 36,
+            "filename" : "include/int/int_sink.p4",
+            "line" : 37,
             "column" : 8,
             "source_fragment" : "hdr.int_data.setInvalid()"
           }
@@ -10921,8 +12975,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_sink.p4",
-            "line" : 37,
+            "filename" : "include/int/int_sink.p4",
+            "line" : 38,
             "column" : 8,
             "source_fragment" : "hdr.intl4_shim.setInvalid()"
           }
@@ -10936,8 +12990,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_sink.p4",
-            "line" : 38,
+            "filename" : "include/int/int_sink.p4",
+            "line" : 39,
             "column" : 8,
             "source_fragment" : "hdr.intl4_tail.setInvalid()"
           }
@@ -10951,8 +13005,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_sink.p4",
-            "line" : 39,
+            "filename" : "include/int/int_sink.p4",
+            "line" : 40,
             "column" : 8,
             "source_fragment" : "hdr.int_switch_id.setInvalid()"
           }
@@ -10966,8 +13020,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_sink.p4",
-            "line" : 40,
+            "filename" : "include/int/int_sink.p4",
+            "line" : 41,
             "column" : 8,
             "source_fragment" : "hdr.int_port_ids.setInvalid()"
           }
@@ -10981,8 +13035,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_sink.p4",
-            "line" : 41,
+            "filename" : "include/int/int_sink.p4",
+            "line" : 42,
             "column" : 8,
             "source_fragment" : "hdr.int_hop_latency.setInvalid()"
           }
@@ -10996,8 +13050,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_sink.p4",
-            "line" : 42,
+            "filename" : "include/int/int_sink.p4",
+            "line" : 43,
             "column" : 8,
             "source_fragment" : "hdr.int_q_occupancy.setInvalid()"
           }
@@ -11011,8 +13065,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_sink.p4",
-            "line" : 43,
+            "filename" : "include/int/int_sink.p4",
+            "line" : 44,
             "column" : 8,
             "source_fragment" : "hdr.int_ingress_tstamp.setInvalid()"
           }
@@ -11026,8 +13080,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_sink.p4",
-            "line" : 44,
+            "filename" : "include/int/int_sink.p4",
+            "line" : 45,
             "column" : 8,
             "source_fragment" : "hdr.int_egress_tstamp.setInvalid()"
           }
@@ -11041,8 +13095,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_sink.p4",
-            "line" : 45,
+            "filename" : "include/int/int_sink.p4",
+            "line" : 46,
             "column" : 8,
             "source_fragment" : "hdr.int_q_congestion.setInvalid()"
           }
@@ -11056,8 +13110,8 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_sink.p4",
-            "line" : 46,
+            "filename" : "include/int/int_sink.p4",
+            "line" : 47,
             "column" : 8,
             "source_fragment" : "hdr.int_egress_tx_util.setInvalid()"
           }
@@ -11066,7 +13120,7 @@
     },
     {
       "name" : "FabricEgress.pkt_io_egress.pop_vlan",
-      "id" : 125,
+      "id" : 121,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -11083,7 +13137,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/packetio.p4",
-            "line" : 39,
+            "line" : 40,
             "column" : 8,
             "source_fragment" : "hdr.ethernet.ether_type = hdr.vlan_tag.ether_type"
           }
@@ -11098,7 +13152,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/packetio.p4",
-            "line" : 40,
+            "line" : 41,
             "column" : 8,
             "source_fragment" : "hdr.vlan_tag.setInvalid()"
           }
@@ -11107,7 +13161,7 @@
     },
     {
       "name" : "FabricEgress.egress_next.pop_vlan",
-      "id" : 126,
+      "id" : 122,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -11148,7 +13202,7 @@
     },
     {
       "name" : "act_31",
-      "id" : 127,
+      "id" : 123,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -11161,7 +13215,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/packetio.p4",
-            "line" : 56,
+            "line" : 57,
             "column" : 12,
             "source_fragment" : "hdr.packet_in.setValid()"
           }
@@ -11180,12 +13234,274 @@
           ],
           "source_info" : {
             "filename" : "include/control/packetio.p4",
-            "line" : 57,
+            "line" : 58,
             "column" : 12,
             "source_fragment" : "hdr.packet_in.ingress_port = standard_metadata.ingress_port"
           }
         }
       ]
+    },
+    {
+      "name" : "act_32",
+      "id" : 124,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "process_int_main_process_int_transit_hasReturned_0"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "b2d",
+                  "left" : null,
+                  "right" : {
+                    "type" : "bool",
+                    "value" : false
+                  }
+                }
+              }
+            }
+          ]
+        }
+      ]
+    },
+    {
+      "name" : "act_33",
+      "id" : 125,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "process_int_main_process_int_transit_hasReturned_0"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "b2d",
+                  "left" : null,
+                  "right" : {
+                    "type" : "bool",
+                    "value" : true
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 370,
+            "column" : 12,
+            "source_fragment" : "return"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "act_34",
+      "id" : 126,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["ipv4", "total_len"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["ipv4", "total_len"]
+                      },
+                      "right" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 378,
+            "column" : 12,
+            "source_fragment" : "hdr.ipv4.total_len = hdr.ipv4.total_len + fmeta.int_meta.new_bytes"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "act_35",
+      "id" : 127,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["int_header", "total_hop_cnt"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["int_header", "total_hop_cnt"]
+                      },
+                      "right" : {
+                        "type" : "hexstr",
+                        "value" : "0x01"
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 375,
+            "column" : 8,
+            "source_fragment" : "hdr.int_header.total_hop_cnt = hdr.int_header.total_hop_cnt + 1"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "act_36",
+      "id" : 128,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["udp", "len"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["udp", "len"]
+                      },
+                      "right" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_bytes"]
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xffff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 381,
+            "column" : 12,
+            "source_fragment" : "hdr.udp.len = hdr.udp.len + fmeta.int_meta.new_bytes"
+          }
+        }
+      ]
+    },
+    {
+      "name" : "act_37",
+      "id" : 129,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["intl4_shim", "len_words"]
+            },
+            {
+              "type" : "expression",
+              "value" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "&",
+                  "left" : {
+                    "type" : "expression",
+                    "value" : {
+                      "op" : "+",
+                      "left" : {
+                        "type" : "field",
+                        "value" : ["intl4_shim", "len_words"]
+                      },
+                      "right" : {
+                        "type" : "field",
+                        "value" : ["userMetadata.int_meta", "new_words"]
+                      }
+                    }
+                  },
+                  "right" : {
+                    "type" : "hexstr",
+                    "value" : "0xff"
+                  }
+                }
+              }
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 384,
+            "column" : 12,
+            "source_fragment" : "hdr.intl4_shim.len_words = hdr.intl4_shim.len_words + fmeta.int_meta.new_words"
+          }
+        }
+      ]
     }
   ],
   "pipelines" : [
@@ -11194,7 +13510,7 @@
       "id" : 0,
       "source_info" : {
         "filename" : "fabric.p4",
-        "line" : 43,
+        "line" : 40,
         "column" : 8,
         "source_fragment" : "FabricIngress"
       },
@@ -12538,8 +14854,8 @@
           "name" : "FabricIngress.process_set_source_sink.tb_set_source",
           "id" : 46,
           "source_info" : {
-            "filename" : "include/int_source.p4",
-            "line" : 101,
+            "filename" : "include/int/int_main.p4",
+            "line" : 46,
             "column" : 10,
             "source_fragment" : "tb_set_source"
           },
@@ -12553,7 +14869,7 @@
           ],
           "match_type" : "exact",
           "type" : "simple",
-          "max_size" : 256,
+          "max_size" : 511,
           "with_counters" : true,
           "support_timeout" : false,
           "direct_meters" : null,
@@ -12575,8 +14891,8 @@
           "name" : "FabricIngress.process_set_source_sink.tb_set_sink",
           "id" : 47,
           "source_info" : {
-            "filename" : "include/int_source.p4",
-            "line" : 111,
+            "filename" : "include/int/int_main.p4",
+            "line" : 65,
             "column" : 10,
             "source_fragment" : "tb_set_sink"
           },
@@ -12590,7 +14906,7 @@
           ],
           "match_type" : "exact",
           "type" : "simple",
-          "max_size" : 256,
+          "max_size" : 511,
           "with_counters" : true,
           "support_timeout" : false,
           "direct_meters" : null,
@@ -13226,22 +15542,29 @@
           "name" : "node_72",
           "id" : 22,
           "source_info" : {
-            "filename" : "fabric.p4",
-            "line" : 77,
+            "filename" : "include/int/int_main.p4",
+            "line" : 82,
             "column" : 11,
-            "source_fragment" : "fabric_metadata.int_meta.sink == 1"
+            "source_fragment" : "fabric_metadata.int_meta.sink == true"
           },
           "expression" : {
             "type" : "expression",
             "value" : {
               "op" : "==",
               "left" : {
-                "type" : "field",
-                "value" : ["userMetadata.int_meta", "sink"]
+                "type" : "expression",
+                "value" : {
+                  "op" : "d2b",
+                  "left" : null,
+                  "right" : {
+                    "type" : "field",
+                    "value" : ["userMetadata.int_meta", "sink"]
+                  }
+                }
               },
               "right" : {
-                "type" : "hexstr",
-                "value" : "0x01"
+                "type" : "bool",
+                "value" : true
               }
             }
           },
@@ -13255,7 +15578,7 @@
       "id" : 1,
       "source_info" : {
         "filename" : "fabric.p4",
-        "line" : 87,
+        "line" : 79,
         "column" : 8,
         "source_fragment" : "FabricEgress"
       },
@@ -13271,14 +15594,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [125],
+          "action_ids" : [121],
           "actions" : ["FabricEgress.pkt_io_egress.pop_vlan"],
           "base_default_next" : "node_80",
           "next_tables" : {
             "FabricEgress.pkt_io_egress.pop_vlan" : "node_80"
           },
           "default_entry" : {
-            "action_id" : 125,
+            "action_id" : 121,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -13317,14 +15640,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [127],
+          "action_ids" : [123],
           "actions" : ["act_31"],
           "base_default_next" : null,
           "next_tables" : {
             "act_31" : null
           },
           "default_entry" : {
-            "action_id" : 127,
+            "action_id" : 123,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -13382,7 +15705,7 @@
           "with_counters" : true,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [126, 80],
+          "action_ids" : [122, 80],
           "actions" : ["FabricEgress.egress_next.pop_vlan", "nop"],
           "base_default_next" : "node_86",
           "next_tables" : {
@@ -13420,11 +15743,11 @@
           }
         },
         {
-          "name" : "FabricEgress.process_int_source.tb_int_source",
+          "name" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
           "id" : 55,
           "source_info" : {
-            "filename" : "include/int_source.p4",
-            "line" : 66,
+            "filename" : "include/int/int_source.p4",
+            "line" : 65,
             "column" : 10,
             "source_fragment" : "tb_int_source"
           },
@@ -13461,10 +15784,10 @@
           "support_timeout" : false,
           "direct_meters" : null,
           "action_ids" : [84, 75],
-          "actions" : ["FabricEgress.process_int_source.int_source_dscp", "NoAction"],
+          "actions" : ["FabricEgress.process_int_main.process_int_source.int_source_dscp", "NoAction"],
           "base_default_next" : "node_91",
           "next_tables" : {
-            "FabricEgress.process_int_source.int_source_dscp" : "node_91",
+            "FabricEgress.process_int_main.process_int_source.int_source_dscp" : "node_91",
             "NoAction" : "node_91"
           },
           "default_entry" : {
@@ -13475,27 +15798,50 @@
           }
         },
         {
-          "name" : "FabricEgress.process_int_transit.tb_int_insert",
+          "name" : "tbl_act_32",
           "id" : 56,
+          "key" : [],
+          "match_type" : "exact",
+          "type" : "simple",
+          "max_size" : 1024,
+          "with_counters" : false,
+          "support_timeout" : false,
+          "direct_meters" : null,
+          "action_ids" : [124],
+          "actions" : ["act_32"],
+          "base_default_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
+          "next_tables" : {
+            "act_32" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert"
+          },
+          "default_entry" : {
+            "action_id" : 124,
+            "action_const" : true,
+            "action_data" : [],
+            "action_entry_const" : true
+          }
+        },
+        {
+          "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
+          "id" : 57,
           "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 227,
+            "filename" : "include/int/int_transit.p4",
+            "line" : 271,
             "column" : 10,
             "source_fragment" : "tb_int_insert"
           },
           "key" : [],
           "match_type" : "exact",
           "type" : "simple",
-          "max_size" : 2,
-          "with_counters" : true,
+          "max_size" : 1024,
+          "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [86, 76],
-          "actions" : ["FabricEgress.process_int_transit.int_transit", "NoAction"],
-          "base_default_next" : "FabricEgress.process_int_transit.tb_int_inst_0003",
+          "action_ids" : [85, 76],
+          "actions" : ["FabricEgress.process_int_main.process_int_transit.init_metadata", "NoAction"],
+          "base_default_next" : "node_94",
           "next_tables" : {
-            "FabricEgress.process_int_transit.int_transit" : "FabricEgress.process_int_transit.tb_int_inst_0003",
-            "NoAction" : "FabricEgress.process_int_transit.tb_int_inst_0003"
+            "FabricEgress.process_int_main.process_int_transit.init_metadata" : "node_94",
+            "NoAction" : "node_94"
           },
           "default_entry" : {
             "action_id" : 76,
@@ -13505,11 +15851,34 @@
           }
         },
         {
-          "name" : "FabricEgress.process_int_transit.tb_int_inst_0003",
-          "id" : 57,
+          "name" : "tbl_act_33",
+          "id" : 58,
+          "key" : [],
+          "match_type" : "exact",
+          "type" : "simple",
+          "max_size" : 1024,
+          "with_counters" : false,
+          "support_timeout" : false,
+          "direct_meters" : null,
+          "action_ids" : [125],
+          "actions" : ["act_33"],
+          "base_default_next" : "node_96",
+          "next_tables" : {
+            "act_33" : "node_96"
+          },
+          "default_entry" : {
+            "action_id" : 125,
+            "action_const" : true,
+            "action_data" : [],
+            "action_entry_const" : true
+          }
+        },
+        {
+          "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003",
+          "id" : 59,
           "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 237,
+            "filename" : "include/int/int_transit.p4",
+            "line" : 280,
             "column" : 10,
             "source_fragment" : "tb_int_inst_0003"
           },
@@ -13524,44 +15893,254 @@
           "match_type" : "exact",
           "type" : "simple",
           "max_size" : 16,
-          "with_counters" : true,
+          "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 77],
-          "actions" : ["FabricEgress.process_int_transit.int_set_header_0003_i0", "FabricEgress.process_int_transit.int_set_header_0003_i1", "FabricEgress.process_int_transit.int_set_header_0003_i2", "FabricEgress.process_int_transit.int_set_header_0003_i3", "FabricEgress.process_int_transit.int_set_header_0003_i4", "FabricEgress.process_int_transit.int_set_header_0003_i5", "FabricEgress.process_int_transit.int_set_header_0003_i6", "FabricEgress.process_int_transit.int_set_header_0003_i7", "FabricEgress.process_int_transit.int_set_header_0003_i8", "FabricEgress.process_int_transit.int_set_header_0003_i9", "FabricEgress.process_int_transit.int_set_header_0003_i10", "FabricEgress.process_int_transit.int_set_header_0003_i11", "FabricEgress.process_int_transit.int_set_header_0003_i12", "FabricEgress.process_int_transit.int_set_header_0003_i13", "FabricEgress.process_int_transit.int_set_header_0003_i14", "FabricEgress.process_int_transit.int_set_header_0003_i15", "NoAction"],
-          "base_default_next" : "FabricEgress.process_int_transit.tb_int_inst_0407",
+          "action_ids" : [86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 77],
+          "actions" : ["FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15", "NoAction"],
+          "base_default_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
           "next_tables" : {
-            "FabricEgress.process_int_transit.int_set_header_0003_i0" : "FabricEgress.process_int_transit.tb_int_inst_0407",
-            "FabricEgress.process_int_transit.int_set_header_0003_i1" : "FabricEgress.process_int_transit.tb_int_inst_0407",
-            "FabricEgress.process_int_transit.int_set_header_0003_i2" : "FabricEgress.process_int_transit.tb_int_inst_0407",
-            "FabricEgress.process_int_transit.int_set_header_0003_i3" : "FabricEgress.process_int_transit.tb_int_inst_0407",
-            "FabricEgress.process_int_transit.int_set_header_0003_i4" : "FabricEgress.process_int_transit.tb_int_inst_0407",
-            "FabricEgress.process_int_transit.int_set_header_0003_i5" : "FabricEgress.process_int_transit.tb_int_inst_0407",
-            "FabricEgress.process_int_transit.int_set_header_0003_i6" : "FabricEgress.process_int_transit.tb_int_inst_0407",
-            "FabricEgress.process_int_transit.int_set_header_0003_i7" : "FabricEgress.process_int_transit.tb_int_inst_0407",
-            "FabricEgress.process_int_transit.int_set_header_0003_i8" : "FabricEgress.process_int_transit.tb_int_inst_0407",
-            "FabricEgress.process_int_transit.int_set_header_0003_i9" : "FabricEgress.process_int_transit.tb_int_inst_0407",
-            "FabricEgress.process_int_transit.int_set_header_0003_i10" : "FabricEgress.process_int_transit.tb_int_inst_0407",
-            "FabricEgress.process_int_transit.int_set_header_0003_i11" : "FabricEgress.process_int_transit.tb_int_inst_0407",
-            "FabricEgress.process_int_transit.int_set_header_0003_i12" : "FabricEgress.process_int_transit.tb_int_inst_0407",
-            "FabricEgress.process_int_transit.int_set_header_0003_i13" : "FabricEgress.process_int_transit.tb_int_inst_0407",
-            "FabricEgress.process_int_transit.int_set_header_0003_i14" : "FabricEgress.process_int_transit.tb_int_inst_0407",
-            "FabricEgress.process_int_transit.int_set_header_0003_i15" : "FabricEgress.process_int_transit.tb_int_inst_0407",
-            "NoAction" : "FabricEgress.process_int_transit.tb_int_inst_0407"
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+            "NoAction" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407"
           },
           "default_entry" : {
             "action_id" : 77,
             "action_const" : false,
             "action_data" : [],
             "action_entry_const" : false
-          }
+          },
+          "entries" : [
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x00"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 86,
+                "action_data" : []
+              },
+              "priority" : 1
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x01"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 87,
+                "action_data" : []
+              },
+              "priority" : 2
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x02"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 88,
+                "action_data" : []
+              },
+              "priority" : 3
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x03"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 89,
+                "action_data" : []
+              },
+              "priority" : 4
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x04"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 90,
+                "action_data" : []
+              },
+              "priority" : 5
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x05"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 91,
+                "action_data" : []
+              },
+              "priority" : 6
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x06"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 92,
+                "action_data" : []
+              },
+              "priority" : 7
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x07"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 93,
+                "action_data" : []
+              },
+              "priority" : 8
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x08"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 94,
+                "action_data" : []
+              },
+              "priority" : 9
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x09"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 95,
+                "action_data" : []
+              },
+              "priority" : 10
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x0a"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 96,
+                "action_data" : []
+              },
+              "priority" : 11
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x0b"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 97,
+                "action_data" : []
+              },
+              "priority" : 12
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x0c"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 98,
+                "action_data" : []
+              },
+              "priority" : 13
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x0d"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 99,
+                "action_data" : []
+              },
+              "priority" : 14
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x0e"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 100,
+                "action_data" : []
+              },
+              "priority" : 15
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x0f"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 101,
+                "action_data" : []
+              },
+              "priority" : 16
+            }
+          ]
         },
         {
-          "name" : "FabricEgress.process_int_transit.tb_int_inst_0407",
-          "id" : 58,
+          "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
+          "id" : 60,
           "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 264,
+            "filename" : "include/int/int_transit.p4",
+            "line" : 324,
             "column" : 10,
             "source_fragment" : "tb_int_inst_0407"
           },
@@ -13576,86 +16155,250 @@
           "match_type" : "exact",
           "type" : "simple",
           "max_size" : 16,
-          "with_counters" : true,
+          "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 78],
-          "actions" : ["FabricEgress.process_int_transit.int_set_header_0407_i0", "FabricEgress.process_int_transit.int_set_header_0407_i1", "FabricEgress.process_int_transit.int_set_header_0407_i2", "FabricEgress.process_int_transit.int_set_header_0407_i3", "FabricEgress.process_int_transit.int_set_header_0407_i4", "FabricEgress.process_int_transit.int_set_header_0407_i5", "FabricEgress.process_int_transit.int_set_header_0407_i6", "FabricEgress.process_int_transit.int_set_header_0407_i7", "FabricEgress.process_int_transit.int_set_header_0407_i8", "FabricEgress.process_int_transit.int_set_header_0407_i9", "FabricEgress.process_int_transit.int_set_header_0407_i10", "FabricEgress.process_int_transit.int_set_header_0407_i11", "FabricEgress.process_int_transit.int_set_header_0407_i12", "FabricEgress.process_int_transit.int_set_header_0407_i13", "FabricEgress.process_int_transit.int_set_header_0407_i14", "FabricEgress.process_int_transit.int_set_header_0407_i15", "NoAction"],
-          "base_default_next" : "tbl_process_int_transit_int_update_total_hop_cnt",
+          "action_ids" : [102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 78],
+          "actions" : ["FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15", "NoAction"],
+          "base_default_next" : "tbl_act_34",
           "next_tables" : {
-            "FabricEgress.process_int_transit.int_set_header_0407_i0" : "tbl_process_int_transit_int_update_total_hop_cnt",
-            "FabricEgress.process_int_transit.int_set_header_0407_i1" : "tbl_process_int_transit_int_update_total_hop_cnt",
-            "FabricEgress.process_int_transit.int_set_header_0407_i2" : "tbl_process_int_transit_int_update_total_hop_cnt",
-            "FabricEgress.process_int_transit.int_set_header_0407_i3" : "tbl_process_int_transit_int_update_total_hop_cnt",
-            "FabricEgress.process_int_transit.int_set_header_0407_i4" : "tbl_process_int_transit_int_update_total_hop_cnt",
-            "FabricEgress.process_int_transit.int_set_header_0407_i5" : "tbl_process_int_transit_int_update_total_hop_cnt",
-            "FabricEgress.process_int_transit.int_set_header_0407_i6" : "tbl_process_int_transit_int_update_total_hop_cnt",
-            "FabricEgress.process_int_transit.int_set_header_0407_i7" : "tbl_process_int_transit_int_update_total_hop_cnt",
-            "FabricEgress.process_int_transit.int_set_header_0407_i8" : "tbl_process_int_transit_int_update_total_hop_cnt",
-            "FabricEgress.process_int_transit.int_set_header_0407_i9" : "tbl_process_int_transit_int_update_total_hop_cnt",
-            "FabricEgress.process_int_transit.int_set_header_0407_i10" : "tbl_process_int_transit_int_update_total_hop_cnt",
-            "FabricEgress.process_int_transit.int_set_header_0407_i11" : "tbl_process_int_transit_int_update_total_hop_cnt",
-            "FabricEgress.process_int_transit.int_set_header_0407_i12" : "tbl_process_int_transit_int_update_total_hop_cnt",
-            "FabricEgress.process_int_transit.int_set_header_0407_i13" : "tbl_process_int_transit_int_update_total_hop_cnt",
-            "FabricEgress.process_int_transit.int_set_header_0407_i14" : "tbl_process_int_transit_int_update_total_hop_cnt",
-            "FabricEgress.process_int_transit.int_set_header_0407_i15" : "tbl_process_int_transit_int_update_total_hop_cnt",
-            "NoAction" : "tbl_process_int_transit_int_update_total_hop_cnt"
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0" : "tbl_act_34",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1" : "tbl_act_34",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2" : "tbl_act_34",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3" : "tbl_act_34",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4" : "tbl_act_34",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5" : "tbl_act_34",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6" : "tbl_act_34",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7" : "tbl_act_34",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8" : "tbl_act_34",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9" : "tbl_act_34",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10" : "tbl_act_34",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11" : "tbl_act_34",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12" : "tbl_act_34",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13" : "tbl_act_34",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14" : "tbl_act_34",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15" : "tbl_act_34",
+            "NoAction" : "tbl_act_34"
           },
           "default_entry" : {
             "action_id" : 78,
             "action_const" : false,
             "action_data" : [],
             "action_entry_const" : false
-          }
-        },
-        {
-          "name" : "tbl_process_int_transit_int_update_total_hop_cnt",
-          "id" : 59,
-          "key" : [],
-          "match_type" : "exact",
-          "type" : "simple",
-          "max_size" : 1024,
-          "with_counters" : false,
-          "support_timeout" : false,
-          "direct_meters" : null,
-          "action_ids" : [85],
-          "actions" : ["FabricEgress.process_int_transit.int_update_total_hop_cnt"],
-          "base_default_next" : "node_96",
-          "next_tables" : {
-            "FabricEgress.process_int_transit.int_update_total_hop_cnt" : "node_96"
           },
-          "default_entry" : {
-            "action_id" : 85,
-            "action_const" : true,
-            "action_data" : [],
-            "action_entry_const" : true
-          }
+          "entries" : [
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x00"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 102,
+                "action_data" : []
+              },
+              "priority" : 1
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x01"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 103,
+                "action_data" : []
+              },
+              "priority" : 2
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x02"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 104,
+                "action_data" : []
+              },
+              "priority" : 3
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x03"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 105,
+                "action_data" : []
+              },
+              "priority" : 4
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x04"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 106,
+                "action_data" : []
+              },
+              "priority" : 5
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x05"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 107,
+                "action_data" : []
+              },
+              "priority" : 6
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x06"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 108,
+                "action_data" : []
+              },
+              "priority" : 7
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x07"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 109,
+                "action_data" : []
+              },
+              "priority" : 8
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x08"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 110,
+                "action_data" : []
+              },
+              "priority" : 9
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x09"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 111,
+                "action_data" : []
+              },
+              "priority" : 10
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x0a"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 112,
+                "action_data" : []
+              },
+              "priority" : 11
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x0b"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 113,
+                "action_data" : []
+              },
+              "priority" : 12
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x0c"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 114,
+                "action_data" : []
+              },
+              "priority" : 13
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x0d"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 115,
+                "action_data" : []
+              },
+              "priority" : 14
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x0e"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 116,
+                "action_data" : []
+              },
+              "priority" : 15
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x0f"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 117,
+                "action_data" : []
+              },
+              "priority" : 16
+            }
+          ]
         },
         {
-          "name" : "tbl_process_int_outer_encap_int_update_ipv4",
-          "id" : 60,
-          "key" : [],
-          "match_type" : "exact",
-          "type" : "simple",
-          "max_size" : 1024,
-          "with_counters" : false,
-          "support_timeout" : false,
-          "direct_meters" : null,
-          "action_ids" : [119],
-          "actions" : ["FabricEgress.process_int_outer_encap.int_update_ipv4"],
-          "base_default_next" : "node_98",
-          "next_tables" : {
-            "FabricEgress.process_int_outer_encap.int_update_ipv4" : "node_98"
-          },
-          "default_entry" : {
-            "action_id" : 119,
-            "action_const" : true,
-            "action_data" : [],
-            "action_entry_const" : true
-          }
-        },
-        {
-          "name" : "tbl_process_int_outer_encap_int_update_udp",
+          "name" : "tbl_act_34",
           "id" : 61,
           "key" : [],
           "match_type" : "exact",
@@ -13664,21 +16407,21 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [120],
-          "actions" : ["FabricEgress.process_int_outer_encap.int_update_udp"],
+          "action_ids" : [127],
+          "actions" : ["act_35"],
           "base_default_next" : "node_100",
           "next_tables" : {
-            "FabricEgress.process_int_outer_encap.int_update_udp" : "node_100"
+            "act_35" : "node_100"
           },
           "default_entry" : {
-            "action_id" : 120,
+            "action_id" : 127,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
           }
         },
         {
-          "name" : "tbl_process_int_outer_encap_int_update_shim",
+          "name" : "tbl_act_35",
           "id" : 62,
           "key" : [],
           "match_type" : "exact",
@@ -13687,25 +16430,71 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [121],
-          "actions" : ["FabricEgress.process_int_outer_encap.int_update_shim"],
+          "action_ids" : [126],
+          "actions" : ["act_34"],
           "base_default_next" : "node_102",
           "next_tables" : {
-            "FabricEgress.process_int_outer_encap.int_update_shim" : "node_102"
+            "act_34" : "node_102"
           },
           "default_entry" : {
-            "action_id" : 121,
+            "action_id" : 126,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
           }
         },
         {
-          "name" : "FabricEgress.process_int_report.tb_generate_report",
+          "name" : "tbl_act_36",
           "id" : 63,
+          "key" : [],
+          "match_type" : "exact",
+          "type" : "simple",
+          "max_size" : 1024,
+          "with_counters" : false,
+          "support_timeout" : false,
+          "direct_meters" : null,
+          "action_ids" : [128],
+          "actions" : ["act_36"],
+          "base_default_next" : "node_104",
+          "next_tables" : {
+            "act_36" : "node_104"
+          },
+          "default_entry" : {
+            "action_id" : 128,
+            "action_const" : true,
+            "action_data" : [],
+            "action_entry_const" : true
+          }
+        },
+        {
+          "name" : "tbl_act_37",
+          "id" : 64,
+          "key" : [],
+          "match_type" : "exact",
+          "type" : "simple",
+          "max_size" : 1024,
+          "with_counters" : false,
+          "support_timeout" : false,
+          "direct_meters" : null,
+          "action_ids" : [129],
+          "actions" : ["act_37"],
+          "base_default_next" : "node_106",
+          "next_tables" : {
+            "act_37" : "node_106"
+          },
+          "default_entry" : {
+            "action_id" : 129,
+            "action_const" : true,
+            "action_data" : [],
+            "action_entry_const" : true
+          }
+        },
+        {
+          "name" : "FabricEgress.process_int_main.process_int_report.tb_generate_report",
+          "id" : 65,
           "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 87,
+            "filename" : "include/int/int_report.p4",
+            "line" : 85,
             "column" : 10,
             "source_fragment" : "tb_generate_report"
           },
@@ -13716,12 +16505,12 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [122, 79],
-          "actions" : ["FabricEgress.process_int_report.do_report_encapsulation", "NoAction"],
-          "base_default_next" : "node_104",
+          "action_ids" : [118, 79],
+          "actions" : ["FabricEgress.process_int_main.process_int_report.do_report_encapsulation", "NoAction"],
+          "base_default_next" : "node_108",
           "next_tables" : {
-            "FabricEgress.process_int_report.do_report_encapsulation" : "node_104",
-            "NoAction" : "node_104"
+            "FabricEgress.process_int_main.process_int_report.do_report_encapsulation" : "node_108",
+            "NoAction" : "node_108"
           },
           "default_entry" : {
             "action_id" : 79,
@@ -13731,8 +16520,8 @@
           }
         },
         {
-          "name" : "tbl_process_int_sink_restore_header",
-          "id" : 64,
+          "name" : "tbl_process_int_main_process_int_sink_restore_header",
+          "id" : 66,
           "key" : [],
           "match_type" : "exact",
           "type" : "simple",
@@ -13740,22 +16529,22 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [123],
-          "actions" : ["FabricEgress.process_int_sink.restore_header"],
-          "base_default_next" : "tbl_process_int_sink_int_sink",
+          "action_ids" : [119],
+          "actions" : ["FabricEgress.process_int_main.process_int_sink.restore_header"],
+          "base_default_next" : "tbl_process_int_main_process_int_sink_int_sink",
           "next_tables" : {
-            "FabricEgress.process_int_sink.restore_header" : "tbl_process_int_sink_int_sink"
+            "FabricEgress.process_int_main.process_int_sink.restore_header" : "tbl_process_int_main_process_int_sink_int_sink"
           },
           "default_entry" : {
-            "action_id" : 123,
+            "action_id" : 119,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
           }
         },
         {
-          "name" : "tbl_process_int_sink_int_sink",
-          "id" : 65,
+          "name" : "tbl_process_int_main_process_int_sink_int_sink",
+          "id" : 67,
           "key" : [],
           "match_type" : "exact",
           "type" : "simple",
@@ -13763,14 +16552,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [124],
-          "actions" : ["FabricEgress.process_int_sink.int_sink"],
+          "action_ids" : [120],
+          "actions" : ["FabricEgress.process_int_main.process_int_sink.int_sink"],
           "base_default_next" : null,
           "next_tables" : {
-            "FabricEgress.process_int_sink.int_sink" : null
+            "FabricEgress.process_int_main.process_int_sink.int_sink" : null
           },
           "default_entry" : {
-            "action_id" : 124,
+            "action_id" : 120,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -13784,7 +16573,7 @@
           "id" : 23,
           "source_info" : {
             "filename" : "include/control/packetio.p4",
-            "line" : 43,
+            "line" : 44,
             "column" : 12,
             "source_fragment" : "fabric_metadata.is_controller_packet_out == true"
           },
@@ -13817,7 +16606,7 @@
           "id" : 24,
           "source_info" : {
             "filename" : "include/control/packetio.p4",
-            "line" : 47,
+            "line" : 48,
             "column" : 12,
             "source_fragment" : "standard_metadata.egress_port == 255"
           },
@@ -13843,7 +16632,7 @@
           "id" : 25,
           "source_info" : {
             "filename" : "include/control/packetio.p4",
-            "line" : 48,
+            "line" : 49,
             "column" : 16,
             "source_fragment" : "hdr.vlan_tag.isValid() && fabric_metadata.pop_vlan_when_packet_in == true"
           },
@@ -13893,7 +16682,7 @@
           "id" : 26,
           "source_info" : {
             "filename" : "include/control/packetio.p4",
-            "line" : 51,
+            "line" : 52,
             "column" : 16,
             "source_fragment" : "fabric_metadata.is_multicast == true && ..."
           },
@@ -14031,8 +16820,8 @@
           "name" : "node_88",
           "id" : 29,
           "source_info" : {
-            "filename" : "fabric.p4",
-            "line" : 101,
+            "filename" : "include/int/int_main.p4",
+            "line" : 98,
             "column" : 12,
             "source_fragment" : "standard_metadata.ingress_port != 255 && ..."
           },
@@ -14111,34 +16900,41 @@
           "name" : "node_89",
           "id" : 30,
           "source_info" : {
-            "filename" : "fabric.p4",
-            "line" : 104,
+            "filename" : "include/int/int_main.p4",
+            "line" : 102,
             "column" : 16,
-            "source_fragment" : "fabric_metadata.int_meta.source == 1"
+            "source_fragment" : "fabric_metadata.int_meta.source == true"
           },
           "expression" : {
             "type" : "expression",
             "value" : {
               "op" : "==",
               "left" : {
-                "type" : "field",
-                "value" : ["userMetadata.int_meta", "source"]
+                "type" : "expression",
+                "value" : {
+                  "op" : "d2b",
+                  "left" : null,
+                  "right" : {
+                    "type" : "field",
+                    "value" : ["userMetadata.int_meta", "source"]
+                  }
+                }
               },
               "right" : {
-                "type" : "hexstr",
-                "value" : "0x01"
+                "type" : "bool",
+                "value" : true
               }
             }
           },
-          "true_next" : "FabricEgress.process_int_source.tb_int_source",
+          "true_next" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
           "false_next" : "node_91"
         },
         {
           "name" : "node_91",
           "id" : 31,
           "source_info" : {
-            "filename" : "fabric.p4",
-            "line" : 107,
+            "filename" : "include/int/int_main.p4",
+            "line" : 106,
             "column" : 15,
             "source_fragment" : "hdr.int_header.isValid()"
           },
@@ -14154,14 +16950,71 @@
             }
           },
           "false_next" : null,
-          "true_next" : "FabricEgress.process_int_transit.tb_int_insert"
+          "true_next" : "tbl_act_32"
+        },
+        {
+          "name" : "node_94",
+          "id" : 32,
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 369,
+            "column" : 12,
+            "source_fragment" : "fmeta.int_meta.transit == false"
+          },
+          "expression" : {
+            "type" : "expression",
+            "value" : {
+              "op" : "==",
+              "left" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "d2b",
+                  "left" : null,
+                  "right" : {
+                    "type" : "field",
+                    "value" : ["userMetadata.int_meta", "transit"]
+                  }
+                }
+              },
+              "right" : {
+                "type" : "bool",
+                "value" : false
+              }
+            }
+          },
+          "true_next" : "tbl_act_33",
+          "false_next" : "node_96"
         },
         {
           "name" : "node_96",
-          "id" : 32,
+          "id" : 33,
+          "expression" : {
+            "type" : "expression",
+            "value" : {
+              "op" : "not",
+              "left" : null,
+              "right" : {
+                "type" : "expression",
+                "value" : {
+                  "op" : "d2b",
+                  "left" : null,
+                  "right" : {
+                    "type" : "field",
+                    "value" : ["scalars", "process_int_main_process_int_transit_hasReturned_0"]
+                  }
+                }
+              }
+            }
+          },
+          "true_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003",
+          "false_next" : "node_106"
+        },
+        {
+          "name" : "node_100",
+          "id" : 34,
           "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 314,
+            "filename" : "include/int/int_transit.p4",
+            "line" : 377,
             "column" : 12,
             "source_fragment" : "hdr.ipv4.isValid()"
           },
@@ -14176,15 +17029,15 @@
               }
             }
           },
-          "true_next" : "tbl_process_int_outer_encap_int_update_ipv4",
-          "false_next" : "node_98"
+          "true_next" : "tbl_act_35",
+          "false_next" : "node_102"
         },
         {
-          "name" : "node_98",
-          "id" : 33,
+          "name" : "node_102",
+          "id" : 35,
           "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 317,
+            "filename" : "include/int/int_transit.p4",
+            "line" : 380,
             "column" : 12,
             "source_fragment" : "hdr.udp.isValid()"
           },
@@ -14199,15 +17052,15 @@
               }
             }
           },
-          "true_next" : "tbl_process_int_outer_encap_int_update_udp",
-          "false_next" : "node_100"
+          "true_next" : "tbl_act_36",
+          "false_next" : "node_104"
         },
         {
-          "name" : "node_100",
-          "id" : 34,
+          "name" : "node_104",
+          "id" : 36,
           "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 320,
+            "filename" : "include/int/int_transit.p4",
+            "line" : 383,
             "column" : 12,
             "source_fragment" : "hdr.intl4_shim.isValid()"
           },
@@ -14222,14 +17075,14 @@
               }
             }
           },
-          "true_next" : "tbl_process_int_outer_encap_int_update_shim",
-          "false_next" : "node_102"
+          "true_next" : "tbl_act_37",
+          "false_next" : "node_106"
         },
         {
-          "name" : "node_102",
-          "id" : 35,
+          "name" : "node_106",
+          "id" : 37,
           "source_info" : {
-            "filename" : "fabric.p4",
+            "filename" : "include/int/int_main.p4",
             "line" : 111,
             "column" : 20,
             "source_fragment" : "standard_metadata.instance_type == 1"
@@ -14248,34 +17101,41 @@
               }
             }
           },
-          "true_next" : "FabricEgress.process_int_report.tb_generate_report",
-          "false_next" : "node_104"
+          "true_next" : "FabricEgress.process_int_main.process_int_report.tb_generate_report",
+          "false_next" : "node_108"
         },
         {
-          "name" : "node_104",
-          "id" : 36,
+          "name" : "node_108",
+          "id" : 38,
           "source_info" : {
-            "filename" : "fabric.p4",
+            "filename" : "include/int/int_main.p4",
             "line" : 115,
             "column" : 20,
-            "source_fragment" : "fabric_metadata.int_meta.sink == 1"
+            "source_fragment" : "fabric_metadata.int_meta.sink == true"
           },
           "expression" : {
             "type" : "expression",
             "value" : {
               "op" : "==",
               "left" : {
-                "type" : "field",
-                "value" : ["userMetadata.int_meta", "sink"]
+                "type" : "expression",
+                "value" : {
+                  "op" : "d2b",
+                  "left" : null,
+                  "right" : {
+                    "type" : "field",
+                    "value" : ["userMetadata.int_meta", "sink"]
+                  }
+                }
               },
               "right" : {
-                "type" : "hexstr",
-                "value" : "0x01"
+                "type" : "bool",
+                "value" : true
               }
             }
           },
           "false_next" : null,
-          "true_next" : "tbl_process_int_sink_restore_header"
+          "true_next" : "tbl_process_int_main_process_int_sink_restore_header"
         }
       ]
     }