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"
         }
       ]
     }
diff --git a/pipelines/fabric/src/main/resources/p4c-out/fabric-full/bmv2/default/p4info.txt b/pipelines/fabric/src/main/resources/p4c-out/fabric-full/bmv2/default/p4info.txt
index e955159..5fcf0f6 100644
--- a/pipelines/fabric/src/main/resources/p4c-out/fabric-full/bmv2/default/p4info.txt
+++ b/pipelines/fabric/src/main/resources/p4c-out/fabric-full/bmv2/default/p4info.txt
@@ -59,7 +59,7 @@
     annotations: "@defaultonly()"
   }
   direct_resource_ids: 318787614
-  size: 256
+  size: 511
   idle_timeout_behavior: NO_TIMEOUT
 }
 tables {
@@ -82,7 +82,7 @@
     annotations: "@defaultonly()"
   }
   direct_resource_ids: 318770551
-  size: 256
+  size: 511
   idle_timeout_behavior: NO_TIMEOUT
 }
 tables {
@@ -473,8 +473,8 @@
 }
 tables {
   preamble {
-    id: 33566961
-    name: "FabricEgress.process_int_source.tb_int_source"
+    id: 33612258
+    name: "FabricEgress.process_int_main.process_int_source.tb_int_source"
     alias: "tb_int_source"
   }
   match_fields {
@@ -502,37 +502,36 @@
     match_type: TERNARY
   }
   action_refs {
-    id: 16807851
+    id: 16785857
   }
   action_refs {
     id: 16800567
     annotations: "@defaultonly()"
   }
-  direct_resource_ids: 318776637
+  direct_resource_ids: 318800047
   size: 1024
   idle_timeout_behavior: NO_TIMEOUT
 }
 tables {
   preamble {
-    id: 33602084
-    name: "FabricEgress.process_int_transit.tb_int_insert"
+    id: 33599867
+    name: "FabricEgress.process_int_main.process_int_transit.tb_int_insert"
     alias: "tb_int_insert"
   }
   action_refs {
-    id: 16806530
+    id: 16780783
   }
   action_refs {
     id: 16800567
     annotations: "@defaultonly()"
   }
-  direct_resource_ids: 318794595
-  size: 2
+  size: 1024
   idle_timeout_behavior: NO_TIMEOUT
 }
 tables {
   preamble {
-    id: 33561642
-    name: "FabricEgress.process_int_transit.tb_int_inst_0003"
+    id: 33569467
+    name: "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003"
     alias: "tb_int_inst_0003"
   }
   match_fields {
@@ -542,65 +541,65 @@
     match_type: EXACT
   }
   action_refs {
-    id: 16788439
+    id: 16809886
   }
   action_refs {
-    id: 16792702
+    id: 16783130
   }
   action_refs {
-    id: 16834796
+    id: 16809096
   }
   action_refs {
-    id: 16815381
+    id: 16834117
   }
   action_refs {
-    id: 16824457
+    id: 16825314
   }
   action_refs {
-    id: 16796364
+    id: 16811436
   }
   action_refs {
-    id: 16806322
+    id: 16802199
   }
   action_refs {
-    id: 16819063
+    id: 16796779
   }
   action_refs {
-    id: 16828306
+    id: 16787676
   }
   action_refs {
-    id: 16799786
+    id: 16825351
   }
   action_refs {
-    id: 16796975
+    id: 16793999
   }
   action_refs {
-    id: 16801652
+    id: 16786714
   }
   action_refs {
-    id: 16778440
+    id: 16814203
   }
   action_refs {
-    id: 16790887
+    id: 16807054
   }
   action_refs {
-    id: 16783849
+    id: 16800064
   }
   action_refs {
-    id: 16837726
+    id: 16792997
   }
   action_refs {
     id: 16800567
     annotations: "@defaultonly()"
   }
-  direct_resource_ids: 318777781
   size: 16
   idle_timeout_behavior: NO_TIMEOUT
+  is_const_table: true
 }
 tables {
   preamble {
-    id: 33571998
-    name: "FabricEgress.process_int_transit.tb_int_inst_0407"
+    id: 33595914
+    name: "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407"
     alias: "tb_int_inst_0407"
   }
   match_fields {
@@ -610,69 +609,69 @@
     match_type: EXACT
   }
   action_refs {
-    id: 16839298
+    id: 16819022
   }
   action_refs {
-    id: 16837018
+    id: 16804144
   }
   action_refs {
-    id: 16827414
+    id: 16829117
   }
   action_refs {
-    id: 16786021
+    id: 16797781
   }
   action_refs {
-    id: 16785131
+    id: 16813543
   }
   action_refs {
-    id: 16808652
+    id: 16824974
   }
   action_refs {
-    id: 16799296
+    id: 16815362
   }
   action_refs {
-    id: 16780668
+    id: 16835399
   }
   action_refs {
-    id: 16805625
+    id: 16834505
   }
   action_refs {
-    id: 16778495
+    id: 16811493
   }
   action_refs {
-    id: 16784981
+    id: 16825476
   }
   action_refs {
-    id: 16806353
+    id: 16799777
   }
   action_refs {
-    id: 16802140
+    id: 16829592
   }
   action_refs {
-    id: 16827601
+    id: 16805877
   }
   action_refs {
-    id: 16820295
+    id: 16780182
   }
   action_refs {
-    id: 16810955
+    id: 16799476
   }
   action_refs {
     id: 16800567
     annotations: "@defaultonly()"
   }
-  direct_resource_ids: 318818305
   size: 16
   idle_timeout_behavior: NO_TIMEOUT
+  is_const_table: true
 }
 tables {
   preamble {
-    id: 33607792
-    name: "FabricEgress.process_int_report.tb_generate_report"
+    id: 33618104
+    name: "FabricEgress.process_int_main.process_int_report.tb_generate_report"
     alias: "tb_generate_report"
   }
   action_refs {
-    id: 16814383
+    id: 16788620
   }
   action_refs {
     id: 16800567
@@ -1160,8 +1159,8 @@
 }
 actions {
   preamble {
-    id: 16807851
-    name: "FabricEgress.process_int_source.int_source_dscp"
+    id: 16785857
+    name: "FabricEgress.process_int_main.process_int_source.int_source_dscp"
     alias: "int_source_dscp"
   }
   params {
@@ -1187,16 +1186,9 @@
 }
 actions {
   preamble {
-    id: 16806280
-    name: "FabricEgress.process_int_transit.int_update_total_hop_cnt"
-    alias: "int_update_total_hop_cnt"
-  }
-}
-actions {
-  preamble {
-    id: 16806530
-    name: "FabricEgress.process_int_transit.int_transit"
-    alias: "int_transit"
+    id: 16780783
+    name: "FabricEgress.process_int_main.process_int_transit.init_metadata"
+    alias: "init_metadata"
   }
   params {
     id: 1
@@ -1206,253 +1198,232 @@
 }
 actions {
   preamble {
-    id: 16788439
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i0"
+    id: 16809886
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0"
     alias: "int_set_header_0003_i0"
   }
 }
 actions {
   preamble {
-    id: 16792702
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i1"
+    id: 16783130
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1"
     alias: "int_set_header_0003_i1"
   }
 }
 actions {
   preamble {
-    id: 16834796
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i2"
+    id: 16809096
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2"
     alias: "int_set_header_0003_i2"
   }
 }
 actions {
   preamble {
-    id: 16815381
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i3"
+    id: 16834117
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3"
     alias: "int_set_header_0003_i3"
   }
 }
 actions {
   preamble {
-    id: 16824457
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i4"
+    id: 16825314
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4"
     alias: "int_set_header_0003_i4"
   }
 }
 actions {
   preamble {
-    id: 16796364
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i5"
+    id: 16811436
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5"
     alias: "int_set_header_0003_i5"
   }
 }
 actions {
   preamble {
-    id: 16806322
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i6"
+    id: 16802199
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6"
     alias: "int_set_header_0003_i6"
   }
 }
 actions {
   preamble {
-    id: 16819063
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i7"
+    id: 16796779
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7"
     alias: "int_set_header_0003_i7"
   }
 }
 actions {
   preamble {
-    id: 16828306
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i8"
+    id: 16787676
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8"
     alias: "int_set_header_0003_i8"
   }
 }
 actions {
   preamble {
-    id: 16799786
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i9"
+    id: 16825351
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9"
     alias: "int_set_header_0003_i9"
   }
 }
 actions {
   preamble {
-    id: 16796975
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i10"
+    id: 16793999
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10"
     alias: "int_set_header_0003_i10"
   }
 }
 actions {
   preamble {
-    id: 16801652
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i11"
+    id: 16786714
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11"
     alias: "int_set_header_0003_i11"
   }
 }
 actions {
   preamble {
-    id: 16778440
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i12"
+    id: 16814203
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12"
     alias: "int_set_header_0003_i12"
   }
 }
 actions {
   preamble {
-    id: 16790887
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i13"
+    id: 16807054
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13"
     alias: "int_set_header_0003_i13"
   }
 }
 actions {
   preamble {
-    id: 16783849
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i14"
+    id: 16800064
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14"
     alias: "int_set_header_0003_i14"
   }
 }
 actions {
   preamble {
-    id: 16837726
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i15"
+    id: 16792997
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15"
     alias: "int_set_header_0003_i15"
   }
 }
 actions {
   preamble {
-    id: 16839298
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i0"
+    id: 16819022
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0"
     alias: "int_set_header_0407_i0"
   }
 }
 actions {
   preamble {
-    id: 16837018
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i1"
+    id: 16804144
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1"
     alias: "int_set_header_0407_i1"
   }
 }
 actions {
   preamble {
-    id: 16827414
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i2"
+    id: 16829117
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2"
     alias: "int_set_header_0407_i2"
   }
 }
 actions {
   preamble {
-    id: 16786021
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i3"
+    id: 16797781
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3"
     alias: "int_set_header_0407_i3"
   }
 }
 actions {
   preamble {
-    id: 16785131
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i4"
+    id: 16813543
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4"
     alias: "int_set_header_0407_i4"
   }
 }
 actions {
   preamble {
-    id: 16808652
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i5"
+    id: 16824974
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5"
     alias: "int_set_header_0407_i5"
   }
 }
 actions {
   preamble {
-    id: 16799296
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i6"
+    id: 16815362
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6"
     alias: "int_set_header_0407_i6"
   }
 }
 actions {
   preamble {
-    id: 16780668
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i7"
+    id: 16835399
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7"
     alias: "int_set_header_0407_i7"
   }
 }
 actions {
   preamble {
-    id: 16805625
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i8"
+    id: 16834505
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8"
     alias: "int_set_header_0407_i8"
   }
 }
 actions {
   preamble {
-    id: 16778495
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i9"
+    id: 16811493
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9"
     alias: "int_set_header_0407_i9"
   }
 }
 actions {
   preamble {
-    id: 16784981
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i10"
+    id: 16825476
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10"
     alias: "int_set_header_0407_i10"
   }
 }
 actions {
   preamble {
-    id: 16806353
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i11"
+    id: 16799777
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11"
     alias: "int_set_header_0407_i11"
   }
 }
 actions {
   preamble {
-    id: 16802140
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i12"
+    id: 16829592
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12"
     alias: "int_set_header_0407_i12"
   }
 }
 actions {
   preamble {
-    id: 16827601
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i13"
+    id: 16805877
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13"
     alias: "int_set_header_0407_i13"
   }
 }
 actions {
   preamble {
-    id: 16820295
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i14"
+    id: 16780182
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14"
     alias: "int_set_header_0407_i14"
   }
 }
 actions {
   preamble {
-    id: 16810955
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i15"
+    id: 16799476
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15"
     alias: "int_set_header_0407_i15"
   }
 }
 actions {
   preamble {
-    id: 16816602
-    name: "FabricEgress.process_int_outer_encap.int_update_ipv4"
-    alias: "int_update_ipv4"
-  }
-}
-actions {
-  preamble {
-    id: 16829666
-    name: "FabricEgress.process_int_outer_encap.int_update_udp"
-    alias: "int_update_udp"
-  }
-}
-actions {
-  preamble {
-    id: 16826978
-    name: "FabricEgress.process_int_outer_encap.int_update_shim"
-    alias: "int_update_shim"
-  }
-}
-actions {
-  preamble {
-    id: 16814383
-    name: "FabricEgress.process_int_report.do_report_encapsulation"
+    id: 16788620
+    name: "FabricEgress.process_int_main.process_int_report.do_report_encapsulation"
     alias: "do_report_encapsulation"
   }
   params {
@@ -1483,15 +1454,15 @@
 }
 actions {
   preamble {
-    id: 16810741
-    name: "FabricEgress.process_int_sink.restore_header"
+    id: 16816369
+    name: "FabricEgress.process_int_main.process_int_sink.restore_header"
     alias: "restore_header"
   }
 }
 actions {
   preamble {
-    id: 16787662
-    name: "FabricEgress.process_int_sink.int_sink"
+    id: 16834566
+    name: "FabricEgress.process_int_main.process_int_sink.int_sink"
     alias: "int_sink"
   }
 }
@@ -1697,47 +1668,14 @@
 }
 direct_counters {
   preamble {
-    id: 318776637
-    name: "FabricEgress.process_int_source.counter_int_source"
+    id: 318800047
+    name: "FabricEgress.process_int_main.process_int_source.counter_int_source"
     alias: "counter_int_source"
   }
   spec {
     unit: BOTH
   }
-  direct_table_id: 33566961
-}
-direct_counters {
-  preamble {
-    id: 318794595
-    name: "FabricEgress.process_int_transit.counter_int_insert"
-    alias: "counter_int_insert"
-  }
-  spec {
-    unit: BOTH
-  }
-  direct_table_id: 33602084
-}
-direct_counters {
-  preamble {
-    id: 318777781
-    name: "FabricEgress.process_int_transit.counter_int_inst_0003"
-    alias: "counter_int_inst_0003"
-  }
-  spec {
-    unit: BOTH
-  }
-  direct_table_id: 33561642
-}
-direct_counters {
-  preamble {
-    id: 318818305
-    name: "FabricEgress.process_int_transit.counter_int_inst_0407"
-    alias: "counter_int_inst_0407"
-  }
-  spec {
-    unit: BOTH
-  }
-  direct_table_id: 33571998
+  direct_table_id: 33612258
 }
 direct_counters {
   preamble {
diff --git a/pipelines/fabric/src/main/resources/p4c-out/fabric-int/bmv2/default/bmv2.json b/pipelines/fabric/src/main/resources/p4c-out/fabric-int/bmv2/default/bmv2.json
index f0917e4..a179079 100644
--- a/pipelines/fabric/src/main/resources/p4c-out/fabric-int/bmv2/default/bmv2.json
+++ b/pipelines/fabric/src/main/resources/p4c-out/fabric-int/bmv2/default/bmv2.json
@@ -4,17 +4,16 @@
       "name" : "scalars_0",
       "id" : 0,
       "fields" : [
+        ["last_ipv4_dscp", 6, false],
         ["tmp", 4, false],
-        ["tmp_0", 1, false],
-        ["tmp_1", 1, false],
-        ["tmp_2", 32, false],
-        ["tmp_3", 32, false],
-        ["tmp_4", 32, false],
+        ["tmp_0", 32, false],
+        ["tmp_1", 32, false],
         ["filtering_tmp_0", 1, false],
         ["next_tmp_2", 1, false],
         ["next_tmp_3", 1, false],
         ["next_tmp_4", 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],
@@ -24,8 +23,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_1", 5, false]
+        ["_padding_1", 1, false]
       ]
     },
     {
@@ -170,57 +168,18 @@
       ]
     },
     {
-      "name" : "report_fixed_header_t",
-      "id" : 12,
-      "fields" : [
-        ["ver", 4, false],
-        ["nproto", 4, false],
-        ["d", 1, false],
-        ["q", 1, false],
-        ["f", 1, false],
-        ["rsvd", 15, false],
-        ["hw_id", 6, false],
-        ["seq_no", 32, false],
-        ["ingress_tstamp", 32, false]
-      ]
-    },
-    {
-      "name" : "drop_report_header_t",
-      "id" : 13,
-      "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" : 14,
-      "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" : 15,
+      "id" : 12,
       "fields" : [
         ["int_type", 8, false],
         ["rsvd1", 8, false],
-        ["len", 8, false],
+        ["len_words", 8, false],
         ["rsvd2", 8, false]
       ]
     },
     {
       "name" : "int_header_t",
-      "id" : 16,
+      "id" : 13,
       "fields" : [
         ["ver", 2, false],
         ["rep", 2, false],
@@ -238,23 +197,15 @@
       ]
     },
     {
-      "name" : "int_data_t",
-      "id" : 17,
-      "fields" : [
-        ["data", "*"]
-      ],
-      "max_length" : 1004
-    },
-    {
       "name" : "int_switch_id_t",
-      "id" : 18,
+      "id" : 14,
       "fields" : [
         ["switch_id", 32, false]
       ]
     },
     {
       "name" : "int_port_ids_t",
-      "id" : 19,
+      "id" : 15,
       "fields" : [
         ["ingress_port_id", 16, false],
         ["egress_port_id", 16, false]
@@ -262,14 +213,14 @@
     },
     {
       "name" : "int_hop_latency_t",
-      "id" : 20,
+      "id" : 16,
       "fields" : [
         ["hop_latency", 32, false]
       ]
     },
     {
       "name" : "int_q_occupancy_t",
-      "id" : 21,
+      "id" : 17,
       "fields" : [
         ["q_id", 8, false],
         ["q_occupancy", 24, false]
@@ -277,21 +228,21 @@
     },
     {
       "name" : "int_ingress_tstamp_t",
-      "id" : 22,
+      "id" : 18,
       "fields" : [
         ["ingress_tstamp", 32, false]
       ]
     },
     {
       "name" : "int_egress_tstamp_t",
-      "id" : 23,
+      "id" : 19,
       "fields" : [
         ["egress_tstamp", 32, false]
       ]
     },
     {
       "name" : "int_q_congestion_t",
-      "id" : 24,
+      "id" : 20,
       "fields" : [
         ["q_id", 8, false],
         ["q_congestion", 24, false]
@@ -299,32 +250,40 @@
     },
     {
       "name" : "int_egress_port_tx_util_t",
-      "id" : 25,
+      "id" : 21,
       "fields" : [
         ["egress_port_tx_util", 32, false]
       ]
     },
     {
+      "name" : "int_data_t",
+      "id" : 22,
+      "fields" : [
+        ["data", "*"]
+      ],
+      "max_length" : 1004
+    },
+    {
       "name" : "intl4_tail_t",
-      "id" : 26,
+      "id" : 23,
       "fields" : [
         ["next_proto", 8, false],
         ["dest_port", 16, false],
-        ["dscp", 8, false]
+        ["padding", 2, false],
+        ["dscp", 6, false]
       ]
     },
     {
       "name" : "int_metadata_t",
-      "id" : 27,
+      "id" : 24,
       "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_0", 6, false]
+        ["new_words", 8, false],
+        ["new_bytes", 16, false],
+        ["_padding_0", 5, false]
       ]
     }
   ],
@@ -414,167 +373,102 @@
       "pi_omit" : true
     },
     {
-      "name" : "report_ethernet",
-      "id" : 12,
-      "header_type" : "ethernet_t",
-      "metadata" : false,
-      "pi_omit" : true
-    },
-    {
-      "name" : "report_ipv4",
-      "id" : 13,
-      "header_type" : "ipv4_t",
-      "metadata" : false,
-      "pi_omit" : true
-    },
-    {
-      "name" : "report_udp",
-      "id" : 14,
-      "header_type" : "udp_t",
-      "metadata" : false,
-      "pi_omit" : true
-    },
-    {
-      "name" : "report_fixed_header",
-      "id" : 15,
-      "header_type" : "report_fixed_header_t",
-      "metadata" : false,
-      "pi_omit" : true
-    },
-    {
-      "name" : "report_local.drop_report_header",
-      "id" : 16,
-      "header_type" : "drop_report_header_t",
-      "metadata" : false,
-      "pi_omit" : true
-    },
-    {
-      "name" : "report_local.local_report_header",
-      "id" : 17,
-      "header_type" : "local_report_header_t",
-      "metadata" : false,
-      "pi_omit" : true
-    },
-    {
       "name" : "intl4_shim",
-      "id" : 18,
+      "id" : 12,
       "header_type" : "intl4_shim_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
       "name" : "int_header",
-      "id" : 19,
+      "id" : 13,
       "header_type" : "int_header_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
-      "name" : "int_data",
-      "id" : 20,
-      "header_type" : "int_data_t",
-      "metadata" : false,
-      "pi_omit" : true
-    },
-    {
       "name" : "int_switch_id",
-      "id" : 21,
+      "id" : 14,
       "header_type" : "int_switch_id_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
       "name" : "int_port_ids",
-      "id" : 22,
+      "id" : 15,
       "header_type" : "int_port_ids_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
       "name" : "int_hop_latency",
-      "id" : 23,
+      "id" : 16,
       "header_type" : "int_hop_latency_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
       "name" : "int_q_occupancy",
-      "id" : 24,
+      "id" : 17,
       "header_type" : "int_q_occupancy_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
       "name" : "int_ingress_tstamp",
-      "id" : 25,
+      "id" : 18,
       "header_type" : "int_ingress_tstamp_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
       "name" : "int_egress_tstamp",
-      "id" : 26,
+      "id" : 19,
       "header_type" : "int_egress_tstamp_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
       "name" : "int_q_congestion",
-      "id" : 27,
+      "id" : 20,
       "header_type" : "int_q_congestion_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
       "name" : "int_egress_tx_util",
-      "id" : 28,
+      "id" : 21,
       "header_type" : "int_egress_port_tx_util_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
+      "name" : "int_data",
+      "id" : 22,
+      "header_type" : "int_data_t",
+      "metadata" : false,
+      "pi_omit" : true
+    },
+    {
       "name" : "intl4_tail",
-      "id" : 29,
+      "id" : 23,
       "header_type" : "intl4_tail_t",
       "metadata" : false,
       "pi_omit" : true
     },
     {
       "name" : "userMetadata.int_meta",
-      "id" : 30,
+      "id" : 24,
       "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" : [16, 17],
-      "pi_omit" : true
-    }
-  ],
+  "header_union_types" : [],
+  "header_unions" : [],
   "header_union_stacks" : [],
-  "field_lists" : [
-    {
-      "id" : 1,
-      "name" : "fl",
-      "elements" : []
-    }
-  ],
+  "field_lists" : [],
   "errors" : [],
   "enums" : [],
   "parsers" : [
@@ -800,6 +694,19 @@
                 }
               ],
               "op" : "set"
+            },
+            {
+              "parameters" : [
+                {
+                  "type" : "field",
+                  "value" : ["scalars", "last_ipv4_dscp"]
+                },
+                {
+                  "type" : "field",
+                  "value" : ["ipv4", "dscp"]
+                }
+              ],
+              "op" : "set"
             }
           ],
           "transitions" : [
@@ -895,94 +802,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",
@@ -1022,92 +851,19 @@
                 }
               ],
               "op" : "set"
-            },
-            {
-              "parameters" : [
-                {
-                  "type" : "field",
-                  "value" : ["scalars", "tmp_1"]
-                },
-                {
-                  "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_1"]
+              "value" : ["udp", "dst_port"]
             }
           ]
         },
@@ -1135,8 +891,32 @@
           "transition_key" : []
         },
         {
-          "name" : "parse_intl4_shim",
+          "name" : "parse_int",
           "id" : 10,
+          "parser_ops" : [],
+          "transitions" : [
+            {
+              "type" : "hexstr",
+              "value" : "0x01",
+              "mask" : "0x01",
+              "next_state" : "parse_intl4_shim"
+            },
+            {
+              "value" : "default",
+              "mask" : null,
+              "next_state" : null
+            }
+          ],
+          "transition_key" : [
+            {
+              "type" : "field",
+              "value" : ["scalars", "last_ipv4_dscp"]
+            }
+          ]
+        },
+        {
+          "name" : "parse_intl4_shim",
+          "id" : 11,
           "parser_ops" : [
             {
               "parameters" : [
@@ -1155,48 +935,12 @@
                 }
               ],
               "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",
+              "value" : "0x04",
               "mask" : null,
               "next_state" : "parse_intl4_tail"
             },
@@ -1209,109 +953,26 @@
           "transition_key" : [
             {
               "type" : "field",
-              "value" : ["userMetadata.int_meta", "metadata_len"]
+              "value" : ["intl4_shim", "len_words"]
             }
           ]
         },
         {
           "name" : "parse_int_data",
-          "id" : 11,
-          "parser_ops" : [
-            {
-              "parameters" : [
-                {
-                  "type" : "field",
-                  "value" : ["scalars", "tmp_2"]
-                },
-                {
-                  "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_2"]
-                  }
-                }
-              ],
-              "op" : "extract_VL"
-            }
-          ],
+          "id" : 12,
+          "parser_ops" : [],
           "transitions" : [
             {
               "value" : "default",
               "mask" : null,
-              "next_state" : "parse_intl4_tail"
+              "next_state" : null
             }
           ],
           "transition_key" : []
         },
         {
           "name" : "parse_intl4_tail",
-          "id" : 12,
+          "id" : 13,
           "parser_ops" : [
             {
               "parameters" : [
@@ -1342,11 +1003,11 @@
       "id" : 0,
       "source_info" : {
         "filename" : "include/parser.p4",
-        "line" : 223,
+        "line" : 228,
         "column" : 8,
         "source_fragment" : "FabricDeparser"
       },
-      "order" : ["packet_in", "report_ethernet", "report_ipv4", "report_udp", "report_fixed_header", "ethernet", "vlan_tag", "mpls", "arp", "ipv4", "tcp", "udp", "icmp", "intl4_shim", "int_header", "int_switch_id", "int_port_ids", "int_hop_latency", "int_q_occupancy", "int_ingress_tstamp", "int_egress_tstamp", "int_q_congestion", "int_egress_tx_util", "int_data", "intl4_tail"]
+      "order" : ["packet_in", "ethernet", "vlan_tag", "mpls", "arp", "ipv4", "tcp", "udp", "icmp", "intl4_shim", "int_header", "int_switch_id", "int_port_ids", "int_hop_latency", "int_q_occupancy", "int_ingress_tstamp", "int_egress_tstamp", "int_q_congestion", "int_egress_tx_util", "int_data", "intl4_tail"]
     }
   ],
   "meter_arrays" : [],
@@ -1358,74 +1019,68 @@
       "binding" : "FabricIngress.process_set_source_sink.tb_set_source"
     },
     {
-      "name" : "FabricIngress.process_set_source_sink.counter_set_sink",
-      "id" : 1,
-      "is_direct" : true,
-      "binding" : "FabricIngress.process_set_source_sink.tb_set_sink"
-    },
-    {
       "name" : "FabricIngress.filtering.ingress_port_vlan_counter",
-      "id" : 2,
+      "id" : 1,
       "is_direct" : true,
       "binding" : "FabricIngress.filtering.ingress_port_vlan"
     },
     {
       "name" : "FabricIngress.filtering.fwd_classifier_counter",
-      "id" : 3,
+      "id" : 2,
       "is_direct" : true,
       "binding" : "FabricIngress.filtering.fwd_classifier"
     },
     {
       "name" : "FabricIngress.forwarding.bridging_counter",
-      "id" : 4,
+      "id" : 3,
       "is_direct" : true,
       "binding" : "FabricIngress.forwarding.bridging"
     },
     {
       "name" : "FabricIngress.forwarding.mpls_counter",
-      "id" : 5,
+      "id" : 4,
       "is_direct" : true,
       "binding" : "FabricIngress.forwarding.mpls"
     },
     {
       "name" : "FabricIngress.forwarding.routing_v4_counter",
-      "id" : 6,
+      "id" : 5,
       "is_direct" : true,
       "binding" : "FabricIngress.forwarding.routing_v4"
     },
     {
       "name" : "FabricIngress.forwarding.acl_counter",
-      "id" : 7,
+      "id" : 6,
       "is_direct" : true,
       "binding" : "FabricIngress.forwarding.acl"
     },
     {
       "name" : "FabricIngress.next.vlan_meta_counter",
-      "id" : 8,
+      "id" : 7,
       "is_direct" : true,
       "binding" : "FabricIngress.next.vlan_meta"
     },
     {
       "name" : "FabricIngress.next.simple_counter",
-      "id" : 9,
+      "id" : 8,
       "is_direct" : true,
       "binding" : "FabricIngress.next.simple"
     },
     {
       "name" : "FabricIngress.next.hashed_counter",
-      "id" : 10,
+      "id" : 9,
       "is_direct" : true,
       "binding" : "FabricIngress.next.hashed"
     },
     {
       "name" : "FabricIngress.next.multicast_counter",
-      "id" : 11,
+      "id" : 10,
       "is_direct" : true,
       "binding" : "FabricIngress.next.multicast"
     },
     {
       "name" : "FabricIngress.port_counters_control.egress_port_counter",
-      "id" : 12,
+      "id" : 11,
       "source_info" : {
         "filename" : "include/control/port_counter.p4",
         "line" : 23,
@@ -1437,7 +1092,7 @@
     },
     {
       "name" : "FabricIngress.port_counters_control.ingress_port_counter",
-      "id" : 13,
+      "id" : 12,
       "source_info" : {
         "filename" : "include/control/port_counter.p4",
         "line" : 24,
@@ -1448,32 +1103,14 @@
       "is_direct" : false
     },
     {
-      "name" : "FabricEgress.process_int_source.counter_int_source",
-      "id" : 14,
+      "name" : "FabricEgress.process_int_main.process_int_source.counter_int_source",
+      "id" : 13,
       "is_direct" : true,
-      "binding" : "FabricEgress.process_int_source.tb_int_source"
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.counter_int_insert",
-      "id" : 15,
-      "is_direct" : true,
-      "binding" : "FabricEgress.process_int_transit.tb_int_insert"
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.counter_int_inst_0003",
-      "id" : 16,
-      "is_direct" : true,
-      "binding" : "FabricEgress.process_int_transit.tb_int_inst_0003"
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.counter_int_inst_0407",
-      "id" : 17,
-      "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" : 18,
+      "id" : 14,
       "is_direct" : true,
       "binding" : "FabricEgress.egress_next.egress_vlan"
     }
@@ -1648,20 +1285,14 @@
       "primitives" : []
     },
     {
-      "name" : "NoAction",
+      "name" : "nop",
       "id" : 7,
       "runtime_data" : [],
       "primitives" : []
     },
     {
-      "name" : "nop",
-      "id" : 8,
-      "runtime_data" : [],
-      "primitives" : []
-    },
-    {
       "name" : "FabricIngress.process_set_source_sink.int_set_source",
-      "id" : 9,
+      "id" : 8,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -1672,48 +1303,32 @@
               "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"
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricIngress.process_set_source_sink.int_set_sink",
-      "id" : 10,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["userMetadata.int_meta", "sink"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x01"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_source.p4",
-            "line" : 98,
-            "column" : 8,
-            "source_fragment" : "fabric_metadata.int_meta.sink = 1"
+            "source_fragment" : "fabric_metadata.int_meta.source = true"
           }
         }
       ]
     },
     {
       "name" : "FabricIngress.filtering.drop",
-      "id" : 11,
+      "id" : 9,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -1730,7 +1345,7 @@
     },
     {
       "name" : "FabricIngress.filtering.set_vlan",
-      "id" : 12,
+      "id" : 10,
       "runtime_data" : [
         {
           "name" : "new_vlan_id",
@@ -1761,7 +1376,7 @@
     },
     {
       "name" : "FabricIngress.filtering.push_internal_vlan",
-      "id" : 13,
+      "id" : 11,
       "runtime_data" : [
         {
           "name" : "new_vlan_id",
@@ -1855,7 +1470,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 89,
+            "line" : 91,
             "column" : 31,
             "source_fragment" : "0x8100; ..."
           }
@@ -1912,13 +1527,13 @@
     },
     {
       "name" : "FabricIngress.filtering.nop_ingress_port_vlan",
-      "id" : 14,
+      "id" : 12,
       "runtime_data" : [],
       "primitives" : []
     },
     {
       "name" : "FabricIngress.filtering.set_forwarding_type",
-      "id" : 15,
+      "id" : 13,
       "runtime_data" : [
         {
           "name" : "fwd_type",
@@ -1949,7 +1564,7 @@
     },
     {
       "name" : "FabricIngress.forwarding.set_next_id_bridging",
-      "id" : 16,
+      "id" : 14,
       "runtime_data" : [
         {
           "name" : "next_id",
@@ -1980,7 +1595,7 @@
     },
     {
       "name" : "FabricIngress.forwarding.pop_mpls_and_next",
-      "id" : 17,
+      "id" : 15,
       "runtime_data" : [
         {
           "name" : "next_id",
@@ -2026,7 +1641,7 @@
     },
     {
       "name" : "FabricIngress.forwarding.set_next_id_routing_v4",
-      "id" : 18,
+      "id" : 16,
       "runtime_data" : [
         {
           "name" : "next_id",
@@ -2057,13 +1672,13 @@
     },
     {
       "name" : "FabricIngress.forwarding.nop_routing_v4",
-      "id" : 19,
+      "id" : 17,
       "runtime_data" : [],
       "primitives" : []
     },
     {
       "name" : "FabricIngress.forwarding.set_next_id_acl",
-      "id" : 20,
+      "id" : 18,
       "runtime_data" : [
         {
           "name" : "next_id",
@@ -2094,7 +1709,7 @@
     },
     {
       "name" : "FabricIngress.forwarding.punt_to_cpu",
-      "id" : 21,
+      "id" : 19,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -2130,7 +1745,7 @@
     },
     {
       "name" : "FabricIngress.forwarding.clone_to_cpu",
-      "id" : 22,
+      "id" : 20,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -2166,7 +1781,7 @@
     },
     {
       "name" : "FabricIngress.forwarding.drop",
-      "id" : 23,
+      "id" : 21,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -2183,13 +1798,13 @@
     },
     {
       "name" : "FabricIngress.forwarding.nop_acl",
-      "id" : 24,
+      "id" : 22,
       "runtime_data" : [],
       "primitives" : []
     },
     {
       "name" : "FabricIngress.next.set_vlan",
-      "id" : 25,
+      "id" : 23,
       "runtime_data" : [
         {
           "name" : "new_vlan_id",
@@ -2220,7 +1835,7 @@
     },
     {
       "name" : "FabricIngress.next.output_simple",
-      "id" : 26,
+      "id" : 24,
       "runtime_data" : [
         {
           "name" : "port_num",
@@ -2251,7 +1866,7 @@
     },
     {
       "name" : "FabricIngress.next.set_vlan_output",
-      "id" : 27,
+      "id" : 25,
       "runtime_data" : [
         {
           "name" : "new_vlan_id",
@@ -2305,7 +1920,7 @@
     },
     {
       "name" : "FabricIngress.next.l3_routing_simple",
-      "id" : 28,
+      "id" : 26,
       "runtime_data" : [
         {
           "name" : "port_num",
@@ -2382,7 +1997,7 @@
     },
     {
       "name" : "FabricIngress.next.mpls_routing_v4_simple",
-      "id" : 29,
+      "id" : 27,
       "runtime_data" : [
         {
           "name" : "port_num",
@@ -2488,7 +2103,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 90,
+            "line" : 92,
             "column" : 31,
             "source_fragment" : "0x8847; ..."
           }
@@ -2564,7 +2179,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 113,
+            "line" : 115,
             "column" : 32,
             "source_fragment" : "64; ..."
           }
@@ -2573,7 +2188,7 @@
     },
     {
       "name" : "FabricIngress.next.mpls_routing_v6_simple",
-      "id" : 30,
+      "id" : 28,
       "runtime_data" : [
         {
           "name" : "port_num",
@@ -2679,7 +2294,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 90,
+            "line" : 92,
             "column" : 31,
             "source_fragment" : "0x8847; ..."
           }
@@ -2755,7 +2370,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 113,
+            "line" : 115,
             "column" : 32,
             "source_fragment" : "64; ..."
           }
@@ -2764,7 +2379,7 @@
     },
     {
       "name" : "FabricIngress.next.l3_routing_vlan",
-      "id" : 31,
+      "id" : 29,
       "runtime_data" : [
         {
           "name" : "port_num",
@@ -2864,7 +2479,7 @@
     },
     {
       "name" : "FabricIngress.next.l3_routing_hashed",
-      "id" : 32,
+      "id" : 30,
       "runtime_data" : [
         {
           "name" : "port_num",
@@ -2941,7 +2556,7 @@
     },
     {
       "name" : "FabricIngress.next.mpls_routing_v4_hashed",
-      "id" : 33,
+      "id" : 31,
       "runtime_data" : [
         {
           "name" : "port_num",
@@ -3047,7 +2662,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 90,
+            "line" : 92,
             "column" : 31,
             "source_fragment" : "0x8847; ..."
           }
@@ -3123,7 +2738,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 113,
+            "line" : 115,
             "column" : 32,
             "source_fragment" : "64; ..."
           }
@@ -3132,7 +2747,7 @@
     },
     {
       "name" : "FabricIngress.next.mpls_routing_v6_hashed",
-      "id" : 34,
+      "id" : 32,
       "runtime_data" : [
         {
           "name" : "port_num",
@@ -3238,7 +2853,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 90,
+            "line" : 92,
             "column" : 31,
             "source_fragment" : "0x8847; ..."
           }
@@ -3314,7 +2929,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 113,
+            "line" : 115,
             "column" : 32,
             "source_fragment" : "64; ..."
           }
@@ -3323,7 +2938,7 @@
     },
     {
       "name" : "FabricIngress.next.set_mcast_group",
-      "id" : 35,
+      "id" : 33,
       "runtime_data" : [
         {
           "name" : "gid",
@@ -3383,7 +2998,7 @@
     },
     {
       "name" : "act",
-      "id" : 36,
+      "id" : 34,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -3453,7 +3068,7 @@
     },
     {
       "name" : "act_0",
-      "id" : 37,
+      "id" : 35,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -3483,7 +3098,7 @@
     },
     {
       "name" : "act_1",
-      "id" : 38,
+      "id" : 36,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -3513,7 +3128,7 @@
     },
     {
       "name" : "act_2",
-      "id" : 39,
+      "id" : 37,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -3530,7 +3145,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 109,
+            "line" : 111,
             "column" : 31,
             "source_fragment" : "7; ..."
           }
@@ -3539,7 +3154,7 @@
     },
     {
       "name" : "act_3",
-      "id" : 40,
+      "id" : 38,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -3556,7 +3171,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 92,
+            "line" : 94,
             "column" : 31,
             "source_fragment" : "0x0800; ..."
           }
@@ -3565,7 +3180,7 @@
     },
     {
       "name" : "act_4",
-      "id" : 41,
+      "id" : 39,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -3595,7 +3210,7 @@
     },
     {
       "name" : "act_5",
-      "id" : 42,
+      "id" : 40,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -3625,7 +3240,7 @@
     },
     {
       "name" : "act_6",
-      "id" : 43,
+      "id" : 41,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -3655,7 +3270,7 @@
     },
     {
       "name" : "act_7",
-      "id" : 44,
+      "id" : 42,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -3685,7 +3300,7 @@
     },
     {
       "name" : "act_8",
-      "id" : 45,
+      "id" : 43,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -3715,7 +3330,7 @@
     },
     {
       "name" : "act_9",
-      "id" : 46,
+      "id" : 44,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -3745,7 +3360,7 @@
     },
     {
       "name" : "act_10",
-      "id" : 47,
+      "id" : 45,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -3775,7 +3390,7 @@
     },
     {
       "name" : "act_11",
-      "id" : 48,
+      "id" : 46,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -3811,7 +3426,7 @@
     },
     {
       "name" : "act_12",
-      "id" : 49,
+      "id" : 47,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -3860,7 +3475,7 @@
     },
     {
       "name" : "act_13",
-      "id" : 50,
+      "id" : 48,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -3868,7 +3483,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "tmp_3"]
+              "value" : ["scalars", "tmp_0"]
             },
             {
               "type" : "expression",
@@ -3904,7 +3519,7 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "tmp_3"]
+              "value" : ["scalars", "tmp_0"]
             }
           ],
           "source_info" : {
@@ -3918,7 +3533,7 @@
     },
     {
       "name" : "act_14",
-      "id" : 51,
+      "id" : 49,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -3926,7 +3541,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["scalars", "tmp_4"]
+              "value" : ["scalars", "tmp_1"]
             },
             {
               "type" : "expression",
@@ -3962,7 +3577,7 @@
             },
             {
               "type" : "field",
-              "value" : ["scalars", "tmp_4"]
+              "value" : ["scalars", "tmp_1"]
             }
           ],
           "source_info" : {
@@ -3975,24 +3590,22 @@
       ]
     },
     {
-      "name" : "act_15",
+      "name" : "NoAction",
+      "id" : 50,
+      "runtime_data" : [],
+      "primitives" : []
+    },
+    {
+      "name" : "NoAction",
+      "id" : 51,
+      "runtime_data" : [],
+      "primitives" : []
+    },
+    {
+      "name" : "NoAction",
       "id" : 52,
       "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "clone_ingress_pkt_to_egress",
-          "parameters" : [
-            {
-              "type" : "hexstr",
-              "value" : "0x000001f4"
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x1"
-            }
-          ]
-        }
-      ]
+      "primitives" : []
     },
     {
       "name" : "NoAction",
@@ -4001,92 +3614,68 @@
       "primitives" : []
     },
     {
-      "name" : "NoAction",
+      "name" : "nop",
       "id" : 54,
       "runtime_data" : [],
       "primitives" : []
     },
     {
-      "name" : "NoAction",
+      "name" : "drop_now",
       "id" : 55,
       "runtime_data" : [],
-      "primitives" : []
+      "primitives" : [
+        {
+          "op" : "drop",
+          "parameters" : [],
+          "source_info" : {
+            "filename" : "include/control/../action.p4",
+            "line" : 24,
+            "column" : 4,
+            "source_fragment" : "mark_to_drop()"
+          }
+        },
+        {
+          "op" : "exit",
+          "parameters" : [],
+          "source_info" : {
+            "filename" : "include/control/../action.p4",
+            "line" : 25,
+            "column" : 4,
+            "source_fragment" : "exit"
+          }
+        }
+      ]
     },
     {
-      "name" : "NoAction",
+      "name" : "drop_now",
       "id" : 56,
       "runtime_data" : [],
-      "primitives" : []
+      "primitives" : [
+        {
+          "op" : "drop",
+          "parameters" : [],
+          "source_info" : {
+            "filename" : "include/control/../action.p4",
+            "line" : 24,
+            "column" : 4,
+            "source_fragment" : "mark_to_drop()"
+          }
+        },
+        {
+          "op" : "exit",
+          "parameters" : [],
+          "source_info" : {
+            "filename" : "include/control/../action.p4",
+            "line" : 25,
+            "column" : 4,
+            "source_fragment" : "exit"
+          }
+        }
+      ]
     },
     {
-      "name" : "NoAction",
+      "name" : "FabricEgress.process_int_main.process_int_source.int_source_dscp",
       "id" : 57,
-      "runtime_data" : [],
-      "primitives" : []
-    },
-    {
-      "name" : "nop",
-      "id" : 58,
-      "runtime_data" : [],
-      "primitives" : []
-    },
-    {
-      "name" : "drop_now",
-      "id" : 59,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "drop",
-          "parameters" : [],
-          "source_info" : {
-            "filename" : "include/control/../action.p4",
-            "line" : 24,
-            "column" : 4,
-            "source_fragment" : "mark_to_drop()"
-          }
-        },
-        {
-          "op" : "exit",
-          "parameters" : [],
-          "source_info" : {
-            "filename" : "include/control/../action.p4",
-            "line" : 25,
-            "column" : 4,
-            "source_fragment" : "exit"
-          }
-        }
-      ]
-    },
-    {
-      "name" : "drop_now",
-      "id" : 60,
-      "runtime_data" : [],
-      "primitives" : [
-        {
-          "op" : "drop",
-          "parameters" : [],
-          "source_info" : {
-            "filename" : "include/control/../action.p4",
-            "line" : 24,
-            "column" : 4,
-            "source_fragment" : "mark_to_drop()"
-          }
-        },
-        {
-          "op" : "exit",
-          "parameters" : [],
-          "source_info" : {
-            "filename" : "include/control/../action.p4",
-            "line" : 25,
-            "column" : 4,
-            "source_fragment" : "exit"
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_source.int_source_dscp",
-      "id" : 61,
       "runtime_data" : [
         {
           "name" : "max_hop",
@@ -4115,7 +3704,7 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_source.p4",
+            "filename" : "include/int/int_source.p4",
             "line" : 31,
             "column" : 8,
             "source_fragment" : "hdr.intl4_shim.setValid()"
@@ -4134,7 +3723,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"
@@ -4145,7 +3734,7 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["intl4_shim", "len"]
+              "value" : ["intl4_shim", "len_words"]
             },
             {
               "type" : "hexstr",
@@ -4154,8 +3743,8 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 127,
-            "column" : 35,
+            "line" : 131,
+            "column" : 36,
             "source_fragment" : "4; ..."
           }
         },
@@ -4168,8 +3757,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()"
           }
@@ -4187,8 +3776,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"
           }
@@ -4206,8 +3795,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"
           }
@@ -4225,8 +3814,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"
           }
@@ -4244,8 +3833,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"
           }
@@ -4263,8 +3852,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"
           }
@@ -4282,8 +3871,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; ..."
           }
@@ -4301,8 +3890,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; ..."
           }
@@ -4320,8 +3909,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"
           }
@@ -4339,8 +3928,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; ..."
           }
@@ -4358,8 +3947,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; ..."
           }
@@ -4377,8 +3966,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"
           }
@@ -4396,8 +3985,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"
           }
@@ -4411,8 +4000,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()"
           }
@@ -4430,8 +4019,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"
           }
@@ -4449,8 +4038,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"
           }
@@ -4463,28 +4052,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"
           }
         },
         {
@@ -4523,10 +4099,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"
           }
         },
         {
@@ -4565,10 +4141,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"
           }
         },
         {
@@ -4585,7 +4161,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 125,
+            "line" : 127,
             "column" : 24,
             "source_fragment" : "0x1; ..."
           }
@@ -4593,57 +4169,8 @@
       ]
     },
     {
-      "name" : "FabricEgress.process_int_transit.int_update_total_hop_cnt",
-      "id" : 62,
-      "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_transit.p4",
-            "line" : 30,
-            "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" : 63,
+      "name" : "FabricEgress.process_int_main.process_int_transit.init_metadata",
+      "id" : 58,
       "runtime_data" : [
         {
           "name" : "switch_id",
@@ -4656,4046 +4183,7 @@
           "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"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["userMetadata.int_meta", "insert_byte_cnt"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "<<",
-                      "left" : {
-                        "type" : "expression",
-                        "value" : {
-                          "op" : "&",
-                          "left" : {
-                            "type" : "field",
-                            "value" : ["int_header", "ins_cnt"]
-                          },
-                          "right" : {
-                            "type" : "hexstr",
-                            "value" : "0xffff"
-                          }
-                        }
-                      },
-                      "right" : {
-                        "type" : "hexstr",
-                        "value" : "0x2"
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 35,
-            "column" : 8,
-            "source_fragment" : "fabric_metadata.int_meta.insert_byte_cnt = (bit<16>) hdr.int_header.ins_cnt << 2"
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0003_i0",
-      "id" : 64,
-      "runtime_data" : [],
-      "primitives" : []
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0003_i1",
-      "id" : 65,
-      "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 = ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0003_i2",
-      "id" : 66,
-      "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 = ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0003_i3",
-      "id" : 67,
-      "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 = ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0003_i4",
-      "id" : 68,
-      "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" : 69,
-      "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" : 70,
-      "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" : 71,
-      "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" : 72,
-      "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" : 73,
-      "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" : 74,
-      "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" : 75,
-      "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" : 76,
-      "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" : 77,
-      "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" : 78,
-      "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" : 79,
-      "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" : 80,
-      "runtime_data" : [],
-      "primitives" : []
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0407_i1",
-      "id" : 81,
-      "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" : 82,
-      "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" : 83,
-      "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" : 84,
-      "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 = ..."
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_transit.int_set_header_0407_i5",
-      "id" : 85,
-      "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" : 86,
-      "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" : 87,
-      "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" : 88,
-      "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" : 89,
-      "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" : 90,
-      "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" : 91,
-      "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" : 92,
-      "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" : 93,
-      "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" : 94,
-      "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" : 95,
-      "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" : 96,
-      "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" : 97,
-      "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" : 98,
-      "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"
-                          }
-                        }
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 310,
-            "column" : 8,
-            "source_fragment" : "hdr.intl4_shim.len = hdr.intl4_shim.len + (bit<8>)hdr.int_header.ins_cnt"
-          }
-        }
-      ]
-    },
-    {
-      "name" : "FabricEgress.process_int_report.do_report_encapsulation",
-      "id" : 99,
-      "runtime_data" : [
-        {
-          "name" : "src_mac",
-          "bitwidth" : 48
-        },
-        {
-          "name" : "mon_mac",
-          "bitwidth" : 48
-        },
-        {
-          "name" : "src_ip",
-          "bitwidth" : 32
-        },
-        {
-          "name" : "mon_ip",
-          "bitwidth" : 32
-        },
-        {
-          "name" : "mon_port",
-          "bitwidth" : 16
-        }
-      ],
-      "primitives" : [
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "report_ethernet"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 50,
-            "column" : 8,
-            "source_fragment" : "hdr.report_ethernet.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["report_ethernet", "dst_addr"]
-            },
-            {
-              "type" : "runtime_data",
-              "value" : 1
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 51,
-            "column" : 8,
-            "source_fragment" : "hdr.report_ethernet.dst_addr = mon_mac"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["report_ethernet", "src_addr"]
-            },
-            {
-              "type" : "runtime_data",
-              "value" : 0
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 52,
-            "column" : 8,
-            "source_fragment" : "hdr.report_ethernet.src_addr = src_mac"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["report_ethernet", "ether_type"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x0800"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/control/../define.p4",
-            "line" : 92,
-            "column" : 31,
-            "source_fragment" : "0x0800; ..."
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "report_ipv4"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 56,
-            "column" : 8,
-            "source_fragment" : "hdr.report_ipv4.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["report_ipv4", "version"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x04"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 57,
-            "column" : 8,
-            "source_fragment" : "hdr.report_ipv4.version = 4w4"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["report_ipv4", "ihl"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x05"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 58,
-            "column" : 8,
-            "source_fragment" : "hdr.report_ipv4.ihl = 4w5"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["report_ipv4", "dscp"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 59,
-            "column" : 8,
-            "source_fragment" : "hdr.report_ipv4.dscp = 6w0"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["report_ipv4", "ecn"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 60,
-            "column" : 8,
-            "source_fragment" : "hdr.report_ipv4.ecn = 2w0"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["report_ipv4", "total_len"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "hexstr",
-                        "value" : "0x0036"
-                      },
-                      "right" : {
-                        "type" : "field",
-                        "value" : ["ipv4", "total_len"]
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 62,
-            "column" : 8,
-            "source_fragment" : "hdr.report_ipv4.total_len = (bit<16>) IPV4_MIN_HEAD_LEN + (bit<16>) UDP_HEADER_LEN + ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["report_ipv4", "identification"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x0000"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 65,
-            "column" : 8,
-            "source_fragment" : "hdr.report_ipv4.identification = 0"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["report_ipv4", "flags"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 66,
-            "column" : 8,
-            "source_fragment" : "hdr.report_ipv4.flags = 0"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["report_ipv4", "frag_offset"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x0000"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 67,
-            "column" : 8,
-            "source_fragment" : "hdr.report_ipv4.frag_offset = 0"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["report_ipv4", "ttl"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0xff"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 68,
-            "column" : 8,
-            "source_fragment" : "hdr.report_ipv4.ttl = 0xFF"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["report_ipv4", "protocol"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x11"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/control/../define.p4",
-            "line" : 98,
-            "column" : 25,
-            "source_fragment" : "17; ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["report_ipv4", "src_addr"]
-            },
-            {
-              "type" : "runtime_data",
-              "value" : 2
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 70,
-            "column" : 8,
-            "source_fragment" : "hdr.report_ipv4.src_addr = src_ip"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["report_ipv4", "dst_addr"]
-            },
-            {
-              "type" : "runtime_data",
-              "value" : 3
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 71,
-            "column" : 8,
-            "source_fragment" : "hdr.report_ipv4.dst_addr = mon_ip"
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "report_udp"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 74,
-            "column" : 8,
-            "source_fragment" : "hdr.report_udp.setValid()"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["report_udp", "src_port"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x0000"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 75,
-            "column" : 8,
-            "source_fragment" : "hdr.report_udp.src_port = 0"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["report_udp", "dst_port"]
-            },
-            {
-              "type" : "runtime_data",
-              "value" : 4
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 76,
-            "column" : 8,
-            "source_fragment" : "hdr.report_udp.dst_port = mon_port"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["report_udp", "len"]
-            },
-            {
-              "type" : "expression",
-              "value" : {
-                "type" : "expression",
-                "value" : {
-                  "op" : "&",
-                  "left" : {
-                    "type" : "expression",
-                    "value" : {
-                      "op" : "+",
-                      "left" : {
-                        "type" : "hexstr",
-                        "value" : "0x0022"
-                      },
-                      "right" : {
-                        "type" : "field",
-                        "value" : ["ipv4", "total_len"]
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 77,
-            "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"]
+              "value" : ["userMetadata.int_meta", "transit"]
             },
             {
               "type" : "expression",
@@ -8713,25 +4201,10 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 80,
+            "filename" : "include/int/int_transit.p4",
+            "line" : 26,
             "column" : 8,
-            "source_fragment" : "fabric_metadata.compute_checksum = true"
-          }
-        },
-        {
-          "op" : "add_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "report_fixed_header"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 30,
-            "column" : 8,
-            "source_fragment" : "hdr.report_fixed_header.setValid()"
+            "source_fragment" : "fmeta.int_meta.transit = true"
           }
         },
         {
@@ -8739,196 +4212,46 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["report_fixed_header", "ver"]
+              "value" : ["userMetadata.int_meta", "switch_id"]
             },
             {
-              "type" : "hexstr",
-              "value" : "0x00"
+              "type" : "runtime_data",
+              "value" : 0
             }
           ],
           "source_info" : {
-            "filename" : "include/int_report.p4",
+            "filename" : "include/int/int_transit.p4",
             "line" : 31,
             "column" : 8,
-            "source_fragment" : "hdr.report_fixed_header.ver = 0"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["report_fixed_header", "nproto"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/control/../define.p4",
-            "line" : 132,
-            "column" : 31,
-            "source_fragment" : "0; ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["report_fixed_header", "d"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 34,
-            "column" : 8,
-            "source_fragment" : "hdr.report_fixed_header.d = 0"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["report_fixed_header", "q"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 35,
-            "column" : 8,
-            "source_fragment" : "hdr.report_fixed_header.q = 0"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["report_fixed_header", "f"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x01"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 36,
-            "column" : 8,
-            "source_fragment" : "hdr.report_fixed_header.f = 1"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["report_fixed_header", "rsvd"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x0000"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 37,
-            "column" : 8,
-            "source_fragment" : "hdr.report_fixed_header.rsvd = 0"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["report_fixed_header", "hw_id"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x01"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/control/../define.p4",
-            "line" : 136,
-            "column" : 21,
-            "source_fragment" : "1; ..."
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["report_fixed_header", "seq_no"]
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x00000000"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 41,
-            "column" : 8,
-            "source_fragment" : "hdr.report_fixed_header.seq_no = 0"
-          }
-        },
-        {
-          "op" : "assign",
-          "parameters" : [
-            {
-              "type" : "field",
-              "value" : ["report_fixed_header", "ingress_tstamp"]
-            },
-            {
-              "type" : "field",
-              "value" : ["standard_metadata", "enq_timestamp"]
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 43,
-            "column" : 8,
-            "source_fragment" : "hdr.report_fixed_header.ingress_tstamp = ..."
+            "source_fragment" : "fmeta.int_meta.switch_id = switch_id"
           }
         }
       ]
     },
     {
-      "name" : "FabricEgress.process_int_sink.restore_header",
-      "id" : 100,
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0",
+      "id" : 59,
+      "runtime_data" : [],
+      "primitives" : []
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1",
+      "id" : 60,
       "runtime_data" : [],
       "primitives" : [
         {
-          "op" : "assign",
+          "op" : "add_header",
           "parameters" : [
             {
-              "type" : "field",
-              "value" : ["udp", "dst_port"]
-            },
-            {
-              "type" : "field",
-              "value" : ["intl4_tail", "dest_port"]
+              "type" : "header",
+              "value" : "int_q_occupancy"
             }
           ],
           "source_info" : {
-            "filename" : "include/int_sink.p4",
-            "line" : 26,
+            "filename" : "include/int/int_transit.p4",
+            "line" : 56,
             "column" : 8,
-            "source_fragment" : "hdr.udp.dst_port = hdr.intl4_tail.dest_port"
+            "source_fragment" : "hdr.int_q_occupancy.setValid()"
           }
         },
         {
@@ -8936,7 +4259,26 @@
           "parameters" : [
             {
               "type" : "field",
-              "value" : ["ipv4", "dscp"]
+              "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",
@@ -8946,266 +4288,116 @@
                   "op" : "&",
                   "left" : {
                     "type" : "field",
-                    "value" : ["intl4_tail", "dscp"]
+                    "value" : ["standard_metadata", "deq_qdepth"]
                   },
                   "right" : {
                     "type" : "hexstr",
-                    "value" : "0x3f"
+                    "value" : "0xffffff"
                   }
                 }
               }
             }
           ],
           "source_info" : {
-            "filename" : "include/int_sink.p4",
-            "line" : 27,
+            "filename" : "include/int/int_transit.p4",
+            "line" : 59,
             "column" : 8,
-            "source_fragment" : "hdr.ipv4.dscp = (bit<6>)hdr.intl4_tail.dscp"
+            "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",
+              "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_sink.int_sink",
-      "id" : 101,
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2",
+      "id" : 61,
       "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" : "expression",
-                        "value" : {
-                          "op" : "&",
-                          "left" : {
-                            "type" : "expression",
-                            "value" : {
-                              "op" : "&",
-                              "left" : {
-                                "type" : "expression",
-                                "value" : {
-                                  "op" : "<<",
-                                  "left" : {
-                                    "type" : "field",
-                                    "value" : ["intl4_shim", "len"]
-                                  },
-                                  "right" : {
-                                    "type" : "hexstr",
-                                    "value" : "0x2"
-                                  }
-                                }
-                              },
-                              "right" : {
-                                "type" : "hexstr",
-                                "value" : "0xff"
-                              }
-                            }
-                          },
-                          "right" : {
-                            "type" : "hexstr",
-                            "value" : "0xffff"
-                          }
-                        }
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_sink.p4",
-            "line" : 32,
-            "column" : 8,
-            "source_fragment" : "hdr.ipv4.total_len = hdr.ipv4.total_len - (bit<16>)(hdr.intl4_shim.len << 2)"
-          }
-        },
-        {
-          "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" : "expression",
-                        "value" : {
-                          "op" : "&",
-                          "left" : {
-                            "type" : "expression",
-                            "value" : {
-                              "op" : "&",
-                              "left" : {
-                                "type" : "expression",
-                                "value" : {
-                                  "op" : "<<",
-                                  "left" : {
-                                    "type" : "field",
-                                    "value" : ["intl4_shim", "len"]
-                                  },
-                                  "right" : {
-                                    "type" : "hexstr",
-                                    "value" : "0x2"
-                                  }
-                                }
-                              },
-                              "right" : {
-                                "type" : "hexstr",
-                                "value" : "0xff"
-                              }
-                            }
-                          },
-                          "right" : {
-                            "type" : "hexstr",
-                            "value" : "0xffff"
-                          }
-                        }
-                      }
-                    }
-                  },
-                  "right" : {
-                    "type" : "hexstr",
-                    "value" : "0xffff"
-                  }
-                }
-              }
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_sink.p4",
-            "line" : 33,
-            "column" : 8,
-            "source_fragment" : "hdr.udp.len = hdr.udp.len - (bit<16>)(hdr.intl4_shim.len << 2)"
-          }
-        },
-        {
-          "op" : "remove_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_header"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_sink.p4",
-            "line" : 35,
-            "column" : 8,
-            "source_fragment" : "hdr.int_header.setInvalid()"
-          }
-        },
-        {
-          "op" : "remove_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_data"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_sink.p4",
-            "line" : 36,
-            "column" : 8,
-            "source_fragment" : "hdr.int_data.setInvalid()"
-          }
-        },
-        {
-          "op" : "remove_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "intl4_shim"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_sink.p4",
-            "line" : 37,
-            "column" : 8,
-            "source_fragment" : "hdr.intl4_shim.setInvalid()"
-          }
-        },
-        {
-          "op" : "remove_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "intl4_tail"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_sink.p4",
-            "line" : 38,
-            "column" : 8,
-            "source_fragment" : "hdr.intl4_tail.setInvalid()"
-          }
-        },
-        {
-          "op" : "remove_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_switch_id"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_sink.p4",
-            "line" : 39,
-            "column" : 8,
-            "source_fragment" : "hdr.int_switch_id.setInvalid()"
-          }
-        },
-        {
-          "op" : "remove_header",
-          "parameters" : [
-            {
-              "type" : "header",
-              "value" : "int_port_ids"
-            }
-          ],
-          "source_info" : {
-            "filename" : "include/int_sink.p4",
-            "line" : 40,
-            "column" : 8,
-            "source_fragment" : "hdr.int_port_ids.setInvalid()"
-          }
-        },
-        {
-          "op" : "remove_header",
+          "op" : "add_header",
           "parameters" : [
             {
               "type" : "header",
@@ -9213,14 +4405,124 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_sink.p4",
-            "line" : 41,
+            "filename" : "include/int/int_transit.p4",
+            "line" : 51,
             "column" : 8,
-            "source_fragment" : "hdr.int_hop_latency.setInvalid()"
+            "source_fragment" : "hdr.int_hop_latency.setValid()"
           }
         },
         {
-          "op" : "remove_header",
+          "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" : "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_i3",
+      "id" : 62,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
           "parameters" : [
             {
               "type" : "header",
@@ -9228,59 +4530,2792 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_sink.p4",
-            "line" : 42,
+            "filename" : "include/int/int_transit.p4",
+            "line" : 56,
             "column" : 8,
-            "source_fragment" : "hdr.int_q_occupancy.setInvalid()"
+            "source_fragment" : "hdr.int_q_occupancy.setValid()"
           }
         },
         {
-          "op" : "remove_header",
+          "op" : "assign",
           "parameters" : [
             {
-              "type" : "header",
-              "value" : "int_ingress_tstamp"
+              "type" : "field",
+              "value" : ["int_q_occupancy", "q_id"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x00"
             }
           ],
           "source_info" : {
-            "filename" : "include/int_sink.p4",
-            "line" : 43,
+            "filename" : "include/int/int_transit.p4",
+            "line" : 58,
             "column" : 8,
-            "source_fragment" : "hdr.int_ingress_tstamp.setInvalid()"
+            "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
           }
         },
         {
-          "op" : "remove_header",
+          "op" : "assign",
           "parameters" : [
             {
-              "type" : "header",
-              "value" : "int_egress_tstamp"
+              "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_sink.p4",
-            "line" : 44,
+            "filename" : "include/int/int_transit.p4",
+            "line" : 59,
             "column" : 8,
-            "source_fragment" : "hdr.int_egress_tstamp.setInvalid()"
+            "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
           }
         },
         {
-          "op" : "remove_header",
+          "op" : "add_header",
           "parameters" : [
             {
               "type" : "header",
-              "value" : "int_q_congestion"
+              "value" : "int_hop_latency"
             }
           ],
           "source_info" : {
-            "filename" : "include/int_sink.p4",
+            "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" : 63,
+      "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_q_congestion.setInvalid()"
+            "source_fragment" : "hdr.int_port_ids.setValid()"
           }
         },
         {
-          "op" : "remove_header",
+          "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" : 64,
+      "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" : 65,
+      "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" : 66,
+      "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" : 67,
+      "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" : 68,
+      "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" : 69,
+      "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" : 70,
+      "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" : 71,
+      "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" : 72,
+      "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" : 73,
+      "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" : 74,
+      "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" : 75,
+      "runtime_data" : [],
+      "primitives" : []
+    },
+    {
+      "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1",
+      "id" : 76,
+      "runtime_data" : [],
+      "primitives" : [
+        {
+          "op" : "add_header",
           "parameters" : [
             {
               "type" : "header",
@@ -9288,17 +7323,2784 @@
             }
           ],
           "source_info" : {
-            "filename" : "include/int_sink.p4",
-            "line" : 46,
+            "filename" : "include/int/int_transit.p4",
+            "line" : 80,
             "column" : 8,
-            "source_fragment" : "hdr.int_egress_tx_util.setInvalid()"
+            "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" : 77,
+      "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" : 78,
+      "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" : 79,
+      "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" : 80,
+      "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" : 81,
+      "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" : 82,
+      "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" : 83,
+      "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" : 84,
+      "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" : 85,
+      "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" : 86,
+      "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" : 87,
+      "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" : 88,
+      "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" : 89,
+      "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" : 90,
+      "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.pkt_io_egress.pop_vlan",
-      "id" : 102,
+      "id" : 91,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -9315,7 +10117,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"
           }
@@ -9330,7 +10132,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/packetio.p4",
-            "line" : 40,
+            "line" : 41,
             "column" : 8,
             "source_fragment" : "hdr.vlan_tag.setInvalid()"
           }
@@ -9339,7 +10141,7 @@
     },
     {
       "name" : "FabricEgress.egress_next.pop_vlan",
-      "id" : 103,
+      "id" : 92,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -9379,8 +10181,8 @@
       ]
     },
     {
-      "name" : "act_16",
-      "id" : 104,
+      "name" : "act_15",
+      "id" : 93,
       "runtime_data" : [],
       "primitives" : [
         {
@@ -9393,7 +10195,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/packetio.p4",
-            "line" : 56,
+            "line" : 57,
             "column" : 12,
             "source_fragment" : "hdr.packet_in.setValid()"
           }
@@ -9412,12 +10214,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_16",
+      "id" : 94,
+      "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_17",
+      "id" : 95,
+      "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_18",
+      "id" : 96,
+      "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_19",
+      "id" : 97,
+      "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_20",
+      "id" : 98,
+      "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_21",
+      "id" : 99,
+      "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" : [
@@ -9426,7 +10490,7 @@
       "id" : 0,
       "source_info" : {
         "filename" : "fabric.p4",
-        "line" : 43,
+        "line" : 40,
         "column" : 8,
         "source_fragment" : "FabricIngress"
       },
@@ -9442,14 +10506,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [36],
+          "action_ids" : [34],
           "actions" : ["act"],
           "base_default_next" : null,
           "next_tables" : {
             "act" : null
           },
           "default_entry" : {
-            "action_id" : 36,
+            "action_id" : 34,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -9490,7 +10554,7 @@
           "with_counters" : true,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [13, 12, 11, 14],
+          "action_ids" : [11, 10, 9, 12],
           "actions" : ["FabricIngress.filtering.push_internal_vlan", "FabricIngress.filtering.set_vlan", "FabricIngress.filtering.drop", "FabricIngress.filtering.nop_ingress_port_vlan"],
           "base_default_next" : null,
           "next_tables" : {
@@ -9498,7 +10562,7 @@
             "__MISS__" : "tbl_act_1"
           },
           "default_entry" : {
-            "action_id" : 13,
+            "action_id" : 11,
             "action_const" : true,
             "action_data" : ["0xffe"],
             "action_entry_const" : true
@@ -9514,14 +10578,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [37],
+          "action_ids" : [35],
           "actions" : ["act_0"],
           "base_default_next" : "node_7",
           "next_tables" : {
             "act_0" : "node_7"
           },
           "default_entry" : {
-            "action_id" : 37,
+            "action_id" : 35,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -9537,14 +10601,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [38],
+          "action_ids" : [36],
           "actions" : ["act_1"],
           "base_default_next" : "node_7",
           "next_tables" : {
             "act_1" : "node_7"
           },
           "default_entry" : {
-            "action_id" : 38,
+            "action_id" : 36,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -9585,14 +10649,14 @@
           "with_counters" : true,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [15],
+          "action_ids" : [13],
           "actions" : ["FabricIngress.filtering.set_forwarding_type"],
           "base_default_next" : "node_10",
           "next_tables" : {
             "FabricIngress.filtering.set_forwarding_type" : "node_10"
           },
           "default_entry" : {
-            "action_id" : 15,
+            "action_id" : 13,
             "action_const" : true,
             "action_data" : ["0x0"],
             "action_entry_const" : true
@@ -9608,14 +10672,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [39],
+          "action_ids" : [37],
           "actions" : ["act_2"],
           "base_default_next" : "node_10",
           "next_tables" : {
             "act_2" : "node_10"
           },
           "default_entry" : {
-            "action_id" : 39,
+            "action_id" : 37,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -9650,7 +10714,7 @@
           "with_counters" : true,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [16, 2],
+          "action_ids" : [14, 1],
           "actions" : ["FabricIngress.forwarding.set_next_id_bridging", "NoAction"],
           "base_default_next" : "FabricIngress.forwarding.acl",
           "next_tables" : {
@@ -9658,7 +10722,7 @@
             "NoAction" : "FabricIngress.forwarding.acl"
           },
           "default_entry" : {
-            "action_id" : 2,
+            "action_id" : 1,
             "action_const" : false,
             "action_data" : [],
             "action_entry_const" : false
@@ -9687,7 +10751,7 @@
           "with_counters" : true,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [17, 3],
+          "action_ids" : [15, 2],
           "actions" : ["FabricIngress.forwarding.pop_mpls_and_next", "NoAction"],
           "base_default_next" : "tbl_act_3",
           "next_tables" : {
@@ -9695,7 +10759,7 @@
             "NoAction" : "tbl_act_3"
           },
           "default_entry" : {
-            "action_id" : 3,
+            "action_id" : 2,
             "action_const" : false,
             "action_data" : [],
             "action_entry_const" : false
@@ -9711,14 +10775,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [40],
+          "action_ids" : [38],
           "actions" : ["act_3"],
           "base_default_next" : "FabricIngress.forwarding.acl",
           "next_tables" : {
             "act_3" : "FabricIngress.forwarding.acl"
           },
           "default_entry" : {
-            "action_id" : 40,
+            "action_id" : 38,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -9747,7 +10811,7 @@
           "with_counters" : true,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [18, 19, 4],
+          "action_ids" : [16, 17, 3],
           "actions" : ["FabricIngress.forwarding.set_next_id_routing_v4", "FabricIngress.forwarding.nop_routing_v4", "NoAction"],
           "base_default_next" : "FabricIngress.forwarding.acl",
           "next_tables" : {
@@ -9756,7 +10820,7 @@
             "NoAction" : "FabricIngress.forwarding.acl"
           },
           "default_entry" : {
-            "action_id" : 4,
+            "action_id" : 3,
             "action_const" : false,
             "action_data" : [],
             "action_entry_const" : false
@@ -9851,7 +10915,7 @@
           "with_counters" : true,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [20, 21, 22, 23, 24],
+          "action_ids" : [18, 19, 20, 21, 22],
           "actions" : ["FabricIngress.forwarding.set_next_id_acl", "FabricIngress.forwarding.punt_to_cpu", "FabricIngress.forwarding.clone_to_cpu", "FabricIngress.forwarding.drop", "FabricIngress.forwarding.nop_acl"],
           "base_default_next" : "tbl_act_4",
           "next_tables" : {
@@ -9862,7 +10926,7 @@
             "FabricIngress.forwarding.nop_acl" : "tbl_act_4"
           },
           "default_entry" : {
-            "action_id" : 24,
+            "action_id" : 22,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -9878,14 +10942,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [41],
+          "action_ids" : [39],
           "actions" : ["act_4"],
           "base_default_next" : "FabricIngress.next.vlan_meta",
           "next_tables" : {
             "act_4" : "FabricIngress.next.vlan_meta"
           },
           "default_entry" : {
-            "action_id" : 41,
+            "action_id" : 39,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -9914,7 +10978,7 @@
           "with_counters" : true,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [25, 8],
+          "action_ids" : [23, 7],
           "actions" : ["FabricIngress.next.set_vlan", "nop"],
           "base_default_next" : "FabricIngress.next.simple",
           "next_tables" : {
@@ -9922,7 +10986,7 @@
             "nop" : "FabricIngress.next.simple"
           },
           "default_entry" : {
-            "action_id" : 8,
+            "action_id" : 7,
             "action_const" : false,
             "action_data" : [],
             "action_entry_const" : false
@@ -9951,7 +11015,7 @@
           "with_counters" : true,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [26, 27, 28, 29, 30, 31, 5],
+          "action_ids" : [24, 25, 26, 27, 28, 29, 4],
           "actions" : ["FabricIngress.next.output_simple", "FabricIngress.next.set_vlan_output", "FabricIngress.next.l3_routing_simple", "FabricIngress.next.mpls_routing_v4_simple", "FabricIngress.next.mpls_routing_v6_simple", "FabricIngress.next.l3_routing_vlan", "NoAction"],
           "base_default_next" : null,
           "next_tables" : {
@@ -9959,7 +11023,7 @@
             "__MISS__" : "tbl_act_6"
           },
           "default_entry" : {
-            "action_id" : 5,
+            "action_id" : 4,
             "action_const" : false,
             "action_data" : [],
             "action_entry_const" : false
@@ -9975,14 +11039,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [42],
+          "action_ids" : [40],
           "actions" : ["act_5"],
           "base_default_next" : "node_23",
           "next_tables" : {
             "act_5" : "node_23"
           },
           "default_entry" : {
-            "action_id" : 42,
+            "action_id" : 40,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -9998,14 +11062,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [43],
+          "action_ids" : [41],
           "actions" : ["act_6"],
           "base_default_next" : "node_23",
           "next_tables" : {
             "act_6" : "node_23"
           },
           "default_entry" : {
-            "action_id" : 43,
+            "action_id" : 41,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -10035,7 +11099,7 @@
           "with_counters" : true,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [32, 33, 34, 6],
+          "action_ids" : [30, 31, 32, 5],
           "actions" : ["FabricIngress.next.l3_routing_hashed", "FabricIngress.next.mpls_routing_v4_hashed", "FabricIngress.next.mpls_routing_v6_hashed", "NoAction"],
           "base_default_next" : null,
           "next_tables" : {
@@ -10053,14 +11117,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [44],
+          "action_ids" : [42],
           "actions" : ["act_7"],
           "base_default_next" : "node_27",
           "next_tables" : {
             "act_7" : "node_27"
           },
           "default_entry" : {
-            "action_id" : 44,
+            "action_id" : 42,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -10076,14 +11140,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [45],
+          "action_ids" : [43],
           "actions" : ["act_8"],
           "base_default_next" : "node_27",
           "next_tables" : {
             "act_8" : "node_27"
           },
           "default_entry" : {
-            "action_id" : 45,
+            "action_id" : 43,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -10112,7 +11176,7 @@
           "with_counters" : true,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [35, 7],
+          "action_ids" : [33, 6],
           "actions" : ["FabricIngress.next.set_mcast_group", "NoAction"],
           "base_default_next" : null,
           "next_tables" : {
@@ -10120,7 +11184,7 @@
             "__MISS__" : "tbl_act_10"
           },
           "default_entry" : {
-            "action_id" : 7,
+            "action_id" : 6,
             "action_const" : false,
             "action_data" : [],
             "action_entry_const" : false
@@ -10136,14 +11200,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [46],
+          "action_ids" : [44],
           "actions" : ["act_9"],
           "base_default_next" : "node_31",
           "next_tables" : {
             "act_9" : "node_31"
           },
           "default_entry" : {
-            "action_id" : 46,
+            "action_id" : 44,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -10159,14 +11223,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [47],
+          "action_ids" : [45],
           "actions" : ["act_10"],
           "base_default_next" : "node_31",
           "next_tables" : {
             "act_10" : "node_31"
           },
           "default_entry" : {
-            "action_id" : 47,
+            "action_id" : 45,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -10182,14 +11246,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [48],
+          "action_ids" : [46],
           "actions" : ["act_11"],
           "base_default_next" : "node_33",
           "next_tables" : {
             "act_11" : "node_33"
           },
           "default_entry" : {
-            "action_id" : 48,
+            "action_id" : 46,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -10205,14 +11269,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [49],
+          "action_ids" : [47],
           "actions" : ["act_12"],
           "base_default_next" : "node_37",
           "next_tables" : {
             "act_12" : "node_37"
           },
           "default_entry" : {
-            "action_id" : 49,
+            "action_id" : 47,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -10228,14 +11292,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [50],
+          "action_ids" : [48],
           "actions" : ["act_13"],
           "base_default_next" : "node_39",
           "next_tables" : {
             "act_13" : "node_39"
           },
           "default_entry" : {
-            "action_id" : 50,
+            "action_id" : 48,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -10251,14 +11315,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [51],
+          "action_ids" : [49],
           "actions" : ["act_14"],
           "base_default_next" : "FabricIngress.process_set_source_sink.tb_set_source",
           "next_tables" : {
             "act_14" : "FabricIngress.process_set_source_sink.tb_set_source"
           },
           "default_entry" : {
-            "action_id" : 51,
+            "action_id" : 49,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -10268,8 +11332,8 @@
           "name" : "FabricIngress.process_set_source_sink.tb_set_source",
           "id" : 26,
           "source_info" : {
-            "filename" : "include/int_source.p4",
-            "line" : 101,
+            "filename" : "include/int/int_main.p4",
+            "line" : 46,
             "column" : 10,
             "source_fragment" : "tb_set_source"
           },
@@ -10283,16 +11347,16 @@
           ],
           "match_type" : "exact",
           "type" : "simple",
-          "max_size" : 256,
+          "max_size" : 511,
           "with_counters" : true,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [9, 0],
+          "action_ids" : [8, 0],
           "actions" : ["FabricIngress.process_set_source_sink.int_set_source", "NoAction"],
-          "base_default_next" : "FabricIngress.process_set_source_sink.tb_set_sink",
+          "base_default_next" : null,
           "next_tables" : {
-            "FabricIngress.process_set_source_sink.int_set_source" : "FabricIngress.process_set_source_sink.tb_set_sink",
-            "NoAction" : "FabricIngress.process_set_source_sink.tb_set_sink"
+            "FabricIngress.process_set_source_sink.int_set_source" : null,
+            "NoAction" : null
           },
           "default_entry" : {
             "action_id" : 0,
@@ -10300,66 +11364,6 @@
             "action_data" : [],
             "action_entry_const" : false
           }
-        },
-        {
-          "name" : "FabricIngress.process_set_source_sink.tb_set_sink",
-          "id" : 27,
-          "source_info" : {
-            "filename" : "include/int_source.p4",
-            "line" : 111,
-            "column" : 10,
-            "source_fragment" : "tb_set_sink"
-          },
-          "key" : [
-            {
-              "match_type" : "exact",
-              "name" : "standard_metadata.egress_spec",
-              "target" : ["standard_metadata", "egress_spec"],
-              "mask" : null
-            }
-          ],
-          "match_type" : "exact",
-          "type" : "simple",
-          "max_size" : 256,
-          "with_counters" : true,
-          "support_timeout" : false,
-          "direct_meters" : null,
-          "action_ids" : [10, 1],
-          "actions" : ["FabricIngress.process_set_source_sink.int_set_sink", "NoAction"],
-          "base_default_next" : "node_43",
-          "next_tables" : {
-            "FabricIngress.process_set_source_sink.int_set_sink" : "node_43",
-            "NoAction" : "node_43"
-          },
-          "default_entry" : {
-            "action_id" : 1,
-            "action_const" : false,
-            "action_data" : [],
-            "action_entry_const" : false
-          }
-        },
-        {
-          "name" : "tbl_act_15",
-          "id" : 28,
-          "key" : [],
-          "match_type" : "exact",
-          "type" : "simple",
-          "max_size" : 1024,
-          "with_counters" : false,
-          "support_timeout" : false,
-          "direct_meters" : null,
-          "action_ids" : [52],
-          "actions" : ["act_15"],
-          "base_default_next" : null,
-          "next_tables" : {
-            "act_15" : null
-          },
-          "default_entry" : {
-            "action_id" : 52,
-            "action_const" : true,
-            "action_data" : [],
-            "action_entry_const" : true
-          }
         }
       ],
       "action_profiles" : [
@@ -10731,32 +11735,6 @@
           },
           "true_next" : "tbl_act_14",
           "false_next" : "FabricIngress.process_set_source_sink.tb_set_source"
-        },
-        {
-          "name" : "node_43",
-          "id" : 13,
-          "source_info" : {
-            "filename" : "fabric.p4",
-            "line" : 77,
-            "column" : 11,
-            "source_fragment" : "fabric_metadata.int_meta.sink == 1"
-          },
-          "expression" : {
-            "type" : "expression",
-            "value" : {
-              "op" : "==",
-              "left" : {
-                "type" : "field",
-                "value" : ["userMetadata.int_meta", "sink"]
-              },
-              "right" : {
-                "type" : "hexstr",
-                "value" : "0x01"
-              }
-            }
-          },
-          "false_next" : null,
-          "true_next" : "tbl_act_15"
         }
       ]
     },
@@ -10765,14 +11743,60 @@
       "id" : 1,
       "source_info" : {
         "filename" : "fabric.p4",
-        "line" : 87,
+        "line" : 79,
         "column" : 8,
         "source_fragment" : "FabricEgress"
       },
-      "init_table" : "node_47",
+      "init_table" : "node_44",
       "tables" : [
         {
           "name" : "tbl_pkt_io_egress_pop_vlan",
+          "id" : 27,
+          "key" : [],
+          "match_type" : "exact",
+          "type" : "simple",
+          "max_size" : 1024,
+          "with_counters" : false,
+          "support_timeout" : false,
+          "direct_meters" : null,
+          "action_ids" : [91],
+          "actions" : ["FabricEgress.pkt_io_egress.pop_vlan"],
+          "base_default_next" : "node_48",
+          "next_tables" : {
+            "FabricEgress.pkt_io_egress.pop_vlan" : "node_48"
+          },
+          "default_entry" : {
+            "action_id" : 91,
+            "action_const" : true,
+            "action_data" : [],
+            "action_entry_const" : true
+          }
+        },
+        {
+          "name" : "tbl_drop_now",
+          "id" : 28,
+          "key" : [],
+          "match_type" : "exact",
+          "type" : "simple",
+          "max_size" : 1024,
+          "with_counters" : false,
+          "support_timeout" : false,
+          "direct_meters" : null,
+          "action_ids" : [55],
+          "actions" : ["drop_now"],
+          "base_default_next" : "tbl_act_15",
+          "next_tables" : {
+            "drop_now" : "tbl_act_15"
+          },
+          "default_entry" : {
+            "action_id" : 55,
+            "action_const" : true,
+            "action_data" : [],
+            "action_entry_const" : true
+          }
+        },
+        {
+          "name" : "tbl_act_15",
           "id" : 29,
           "key" : [],
           "match_type" : "exact",
@@ -10781,21 +11805,21 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [102],
-          "actions" : ["FabricEgress.pkt_io_egress.pop_vlan"],
-          "base_default_next" : "node_51",
+          "action_ids" : [93],
+          "actions" : ["act_15"],
+          "base_default_next" : null,
           "next_tables" : {
-            "FabricEgress.pkt_io_egress.pop_vlan" : "node_51"
+            "act_15" : null
           },
           "default_entry" : {
-            "action_id" : 102,
+            "action_id" : 93,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
           }
         },
         {
-          "name" : "tbl_drop_now",
+          "name" : "tbl_drop_now_0",
           "id" : 30,
           "key" : [],
           "match_type" : "exact",
@@ -10804,60 +11828,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [59],
-          "actions" : ["drop_now"],
-          "base_default_next" : "tbl_act_16",
-          "next_tables" : {
-            "drop_now" : "tbl_act_16"
-          },
-          "default_entry" : {
-            "action_id" : 59,
-            "action_const" : true,
-            "action_data" : [],
-            "action_entry_const" : true
-          }
-        },
-        {
-          "name" : "tbl_act_16",
-          "id" : 31,
-          "key" : [],
-          "match_type" : "exact",
-          "type" : "simple",
-          "max_size" : 1024,
-          "with_counters" : false,
-          "support_timeout" : false,
-          "direct_meters" : null,
-          "action_ids" : [104],
-          "actions" : ["act_16"],
-          "base_default_next" : null,
-          "next_tables" : {
-            "act_16" : null
-          },
-          "default_entry" : {
-            "action_id" : 104,
-            "action_const" : true,
-            "action_data" : [],
-            "action_entry_const" : true
-          }
-        },
-        {
-          "name" : "tbl_drop_now_0",
-          "id" : 32,
-          "key" : [],
-          "match_type" : "exact",
-          "type" : "simple",
-          "max_size" : 1024,
-          "with_counters" : false,
-          "support_timeout" : false,
-          "direct_meters" : null,
-          "action_ids" : [60],
+          "action_ids" : [56],
           "actions" : ["drop_now"],
           "base_default_next" : "FabricEgress.egress_next.egress_vlan",
           "next_tables" : {
             "drop_now" : "FabricEgress.egress_next.egress_vlan"
           },
           "default_entry" : {
-            "action_id" : 60,
+            "action_id" : 56,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -10865,7 +11843,7 @@
         },
         {
           "name" : "FabricEgress.egress_next.egress_vlan",
-          "id" : 33,
+          "id" : 31,
           "source_info" : {
             "filename" : "include/control/next.p4",
             "line" : 258,
@@ -10892,26 +11870,26 @@
           "with_counters" : true,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [103, 58],
+          "action_ids" : [92, 54],
           "actions" : ["FabricEgress.egress_next.pop_vlan", "nop"],
-          "base_default_next" : "node_57",
+          "base_default_next" : "node_54",
           "next_tables" : {
-            "FabricEgress.egress_next.pop_vlan" : "node_57",
-            "nop" : "node_57"
+            "FabricEgress.egress_next.pop_vlan" : "node_54",
+            "nop" : "node_54"
           },
           "default_entry" : {
-            "action_id" : 58,
+            "action_id" : 54,
             "action_const" : false,
             "action_data" : [],
             "action_entry_const" : false
           }
         },
         {
-          "name" : "FabricEgress.process_int_source.tb_int_source",
-          "id" : 34,
+          "name" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
+          "id" : 32,
           "source_info" : {
-            "filename" : "include/int_source.p4",
-            "line" : 66,
+            "filename" : "include/int/int_source.p4",
+            "line" : 65,
             "column" : 10,
             "source_fragment" : "tb_int_source"
           },
@@ -10947,56 +11925,102 @@
           "with_counters" : true,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [61, 53],
-          "actions" : ["FabricEgress.process_int_source.int_source_dscp", "NoAction"],
-          "base_default_next" : "node_60",
+          "action_ids" : [57, 50],
+          "actions" : ["FabricEgress.process_int_main.process_int_source.int_source_dscp", "NoAction"],
+          "base_default_next" : "node_57",
           "next_tables" : {
-            "FabricEgress.process_int_source.int_source_dscp" : "node_60",
-            "NoAction" : "node_60"
+            "FabricEgress.process_int_main.process_int_source.int_source_dscp" : "node_57",
+            "NoAction" : "node_57"
           },
           "default_entry" : {
-            "action_id" : 53,
+            "action_id" : 50,
             "action_const" : false,
             "action_data" : [],
             "action_entry_const" : false
           }
         },
         {
-          "name" : "FabricEgress.process_int_transit.tb_int_insert",
-          "id" : 35,
+          "name" : "tbl_act_16",
+          "id" : 33,
+          "key" : [],
+          "match_type" : "exact",
+          "type" : "simple",
+          "max_size" : 1024,
+          "with_counters" : false,
+          "support_timeout" : false,
+          "direct_meters" : null,
+          "action_ids" : [94],
+          "actions" : ["act_16"],
+          "base_default_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
+          "next_tables" : {
+            "act_16" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert"
+          },
+          "default_entry" : {
+            "action_id" : 94,
+            "action_const" : true,
+            "action_data" : [],
+            "action_entry_const" : true
+          }
+        },
+        {
+          "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
+          "id" : 34,
           "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" : [63, 54],
-          "actions" : ["FabricEgress.process_int_transit.int_transit", "NoAction"],
-          "base_default_next" : "FabricEgress.process_int_transit.tb_int_inst_0003",
+          "action_ids" : [58, 51],
+          "actions" : ["FabricEgress.process_int_main.process_int_transit.init_metadata", "NoAction"],
+          "base_default_next" : "node_60",
           "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_60",
+            "NoAction" : "node_60"
           },
           "default_entry" : {
-            "action_id" : 54,
+            "action_id" : 51,
             "action_const" : false,
             "action_data" : [],
             "action_entry_const" : false
           }
         },
         {
-          "name" : "FabricEgress.process_int_transit.tb_int_inst_0003",
+          "name" : "tbl_act_17",
+          "id" : 35,
+          "key" : [],
+          "match_type" : "exact",
+          "type" : "simple",
+          "max_size" : 1024,
+          "with_counters" : false,
+          "support_timeout" : false,
+          "direct_meters" : null,
+          "action_ids" : [95],
+          "actions" : ["act_17"],
+          "base_default_next" : "node_62",
+          "next_tables" : {
+            "act_17" : "node_62"
+          },
+          "default_entry" : {
+            "action_id" : 95,
+            "action_const" : true,
+            "action_data" : [],
+            "action_entry_const" : true
+          }
+        },
+        {
+          "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003",
           "id" : 36,
           "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"
           },
@@ -11011,44 +12035,254 @@
           "match_type" : "exact",
           "type" : "simple",
           "max_size" : 16,
-          "with_counters" : true,
+          "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 55],
-          "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" : [59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 52],
+          "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" : 55,
+            "action_id" : 52,
             "action_const" : false,
             "action_data" : [],
             "action_entry_const" : false
-          }
+          },
+          "entries" : [
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x00"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 59,
+                "action_data" : []
+              },
+              "priority" : 1
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x01"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 60,
+                "action_data" : []
+              },
+              "priority" : 2
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x02"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 61,
+                "action_data" : []
+              },
+              "priority" : 3
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x03"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 62,
+                "action_data" : []
+              },
+              "priority" : 4
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x04"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 63,
+                "action_data" : []
+              },
+              "priority" : 5
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x05"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 64,
+                "action_data" : []
+              },
+              "priority" : 6
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x06"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 65,
+                "action_data" : []
+              },
+              "priority" : 7
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x07"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 66,
+                "action_data" : []
+              },
+              "priority" : 8
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x08"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 67,
+                "action_data" : []
+              },
+              "priority" : 9
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x09"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 68,
+                "action_data" : []
+              },
+              "priority" : 10
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x0a"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 69,
+                "action_data" : []
+              },
+              "priority" : 11
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x0b"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 70,
+                "action_data" : []
+              },
+              "priority" : 12
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x0c"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 71,
+                "action_data" : []
+              },
+              "priority" : 13
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x0d"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 72,
+                "action_data" : []
+              },
+              "priority" : 14
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x0e"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 73,
+                "action_data" : []
+              },
+              "priority" : 15
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x0f"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 74,
+                "action_data" : []
+              },
+              "priority" : 16
+            }
+          ]
         },
         {
-          "name" : "FabricEgress.process_int_transit.tb_int_inst_0407",
+          "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
           "id" : 37,
           "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"
           },
@@ -11063,40 +12297,250 @@
           "match_type" : "exact",
           "type" : "simple",
           "max_size" : 16,
-          "with_counters" : true,
+          "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 56],
-          "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" : [75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 53],
+          "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_18",
           "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_18",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1" : "tbl_act_18",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2" : "tbl_act_18",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3" : "tbl_act_18",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4" : "tbl_act_18",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5" : "tbl_act_18",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6" : "tbl_act_18",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7" : "tbl_act_18",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8" : "tbl_act_18",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9" : "tbl_act_18",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10" : "tbl_act_18",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11" : "tbl_act_18",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12" : "tbl_act_18",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13" : "tbl_act_18",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14" : "tbl_act_18",
+            "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15" : "tbl_act_18",
+            "NoAction" : "tbl_act_18"
           },
           "default_entry" : {
-            "action_id" : 56,
+            "action_id" : 53,
             "action_const" : false,
             "action_data" : [],
             "action_entry_const" : false
-          }
+          },
+          "entries" : [
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x00"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 75,
+                "action_data" : []
+              },
+              "priority" : 1
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x01"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 76,
+                "action_data" : []
+              },
+              "priority" : 2
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x02"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 77,
+                "action_data" : []
+              },
+              "priority" : 3
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x03"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 78,
+                "action_data" : []
+              },
+              "priority" : 4
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x04"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 79,
+                "action_data" : []
+              },
+              "priority" : 5
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x05"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 80,
+                "action_data" : []
+              },
+              "priority" : 6
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x06"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 81,
+                "action_data" : []
+              },
+              "priority" : 7
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x07"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 82,
+                "action_data" : []
+              },
+              "priority" : 8
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x08"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 83,
+                "action_data" : []
+              },
+              "priority" : 9
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x09"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 84,
+                "action_data" : []
+              },
+              "priority" : 10
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x0a"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 85,
+                "action_data" : []
+              },
+              "priority" : 11
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x0b"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 86,
+                "action_data" : []
+              },
+              "priority" : 12
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x0c"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 87,
+                "action_data" : []
+              },
+              "priority" : 13
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x0d"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 88,
+                "action_data" : []
+              },
+              "priority" : 14
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x0e"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 89,
+                "action_data" : []
+              },
+              "priority" : 15
+            },
+            {
+              "match_key" : [
+                {
+                  "match_type" : "exact",
+                  "key" : "0x0f"
+                }
+              ],
+              "action_entry" : {
+                "action_id" : 90,
+                "action_data" : []
+              },
+              "priority" : 16
+            }
+          ]
         },
         {
-          "name" : "tbl_process_int_transit_int_update_total_hop_cnt",
+          "name" : "tbl_act_18",
           "id" : 38,
           "key" : [],
           "match_type" : "exact",
@@ -11105,57 +12549,11 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [62],
-          "actions" : ["FabricEgress.process_int_transit.int_update_total_hop_cnt"],
-          "base_default_next" : "node_65",
-          "next_tables" : {
-            "FabricEgress.process_int_transit.int_update_total_hop_cnt" : "node_65"
-          },
-          "default_entry" : {
-            "action_id" : 62,
-            "action_const" : true,
-            "action_data" : [],
-            "action_entry_const" : true
-          }
-        },
-        {
-          "name" : "tbl_process_int_outer_encap_int_update_ipv4",
-          "id" : 39,
-          "key" : [],
-          "match_type" : "exact",
-          "type" : "simple",
-          "max_size" : 1024,
-          "with_counters" : false,
-          "support_timeout" : false,
-          "direct_meters" : null,
-          "action_ids" : [96],
-          "actions" : ["FabricEgress.process_int_outer_encap.int_update_ipv4"],
-          "base_default_next" : "node_67",
-          "next_tables" : {
-            "FabricEgress.process_int_outer_encap.int_update_ipv4" : "node_67"
-          },
-          "default_entry" : {
-            "action_id" : 96,
-            "action_const" : true,
-            "action_data" : [],
-            "action_entry_const" : true
-          }
-        },
-        {
-          "name" : "tbl_process_int_outer_encap_int_update_udp",
-          "id" : 40,
-          "key" : [],
-          "match_type" : "exact",
-          "type" : "simple",
-          "max_size" : 1024,
-          "with_counters" : false,
-          "support_timeout" : false,
-          "direct_meters" : null,
           "action_ids" : [97],
-          "actions" : ["FabricEgress.process_int_outer_encap.int_update_udp"],
-          "base_default_next" : "node_69",
+          "actions" : ["act_19"],
+          "base_default_next" : "node_66",
           "next_tables" : {
-            "FabricEgress.process_int_outer_encap.int_update_udp" : "node_69"
+            "act_19" : "node_66"
           },
           "default_entry" : {
             "action_id" : 97,
@@ -11165,8 +12563,31 @@
           }
         },
         {
-          "name" : "tbl_process_int_outer_encap_int_update_shim",
-          "id" : 41,
+          "name" : "tbl_act_19",
+          "id" : 39,
+          "key" : [],
+          "match_type" : "exact",
+          "type" : "simple",
+          "max_size" : 1024,
+          "with_counters" : false,
+          "support_timeout" : false,
+          "direct_meters" : null,
+          "action_ids" : [96],
+          "actions" : ["act_18"],
+          "base_default_next" : "node_68",
+          "next_tables" : {
+            "act_18" : "node_68"
+          },
+          "default_entry" : {
+            "action_id" : 96,
+            "action_const" : true,
+            "action_data" : [],
+            "action_entry_const" : true
+          }
+        },
+        {
+          "name" : "tbl_act_20",
+          "id" : 40,
           "key" : [],
           "match_type" : "exact",
           "type" : "simple",
@@ -11175,10 +12596,10 @@
           "support_timeout" : false,
           "direct_meters" : null,
           "action_ids" : [98],
-          "actions" : ["FabricEgress.process_int_outer_encap.int_update_shim"],
-          "base_default_next" : "node_71",
+          "actions" : ["act_20"],
+          "base_default_next" : "node_70",
           "next_tables" : {
-            "FabricEgress.process_int_outer_encap.int_update_shim" : "node_71"
+            "act_20" : "node_70"
           },
           "default_entry" : {
             "action_id" : 98,
@@ -11188,14 +12609,8 @@
           }
         },
         {
-          "name" : "FabricEgress.process_int_report.tb_generate_report",
-          "id" : 42,
-          "source_info" : {
-            "filename" : "include/int_report.p4",
-            "line" : 87,
-            "column" : 10,
-            "source_fragment" : "tb_generate_report"
-          },
+          "name" : "tbl_act_21",
+          "id" : 41,
           "key" : [],
           "match_type" : "exact",
           "type" : "simple",
@@ -11203,61 +12618,14 @@
           "with_counters" : false,
           "support_timeout" : false,
           "direct_meters" : null,
-          "action_ids" : [99, 57],
-          "actions" : ["FabricEgress.process_int_report.do_report_encapsulation", "NoAction"],
-          "base_default_next" : "node_73",
-          "next_tables" : {
-            "FabricEgress.process_int_report.do_report_encapsulation" : "node_73",
-            "NoAction" : "node_73"
-          },
-          "default_entry" : {
-            "action_id" : 57,
-            "action_const" : false,
-            "action_data" : [],
-            "action_entry_const" : false
-          }
-        },
-        {
-          "name" : "tbl_process_int_sink_restore_header",
-          "id" : 43,
-          "key" : [],
-          "match_type" : "exact",
-          "type" : "simple",
-          "max_size" : 1024,
-          "with_counters" : false,
-          "support_timeout" : false,
-          "direct_meters" : null,
-          "action_ids" : [100],
-          "actions" : ["FabricEgress.process_int_sink.restore_header"],
-          "base_default_next" : "tbl_process_int_sink_int_sink",
-          "next_tables" : {
-            "FabricEgress.process_int_sink.restore_header" : "tbl_process_int_sink_int_sink"
-          },
-          "default_entry" : {
-            "action_id" : 100,
-            "action_const" : true,
-            "action_data" : [],
-            "action_entry_const" : true
-          }
-        },
-        {
-          "name" : "tbl_process_int_sink_int_sink",
-          "id" : 44,
-          "key" : [],
-          "match_type" : "exact",
-          "type" : "simple",
-          "max_size" : 1024,
-          "with_counters" : false,
-          "support_timeout" : false,
-          "direct_meters" : null,
-          "action_ids" : [101],
-          "actions" : ["FabricEgress.process_int_sink.int_sink"],
+          "action_ids" : [99],
+          "actions" : ["act_21"],
           "base_default_next" : null,
           "next_tables" : {
-            "FabricEgress.process_int_sink.int_sink" : null
+            "act_21" : null
           },
           "default_entry" : {
-            "action_id" : 101,
+            "action_id" : 99,
             "action_const" : true,
             "action_data" : [],
             "action_entry_const" : true
@@ -11267,11 +12635,11 @@
       "action_profiles" : [],
       "conditionals" : [
         {
-          "name" : "node_47",
-          "id" : 14,
+          "name" : "node_44",
+          "id" : 13,
           "source_info" : {
             "filename" : "include/control/packetio.p4",
-            "line" : 43,
+            "line" : 44,
             "column" : 12,
             "source_fragment" : "fabric_metadata.is_controller_packet_out == true"
           },
@@ -11297,14 +12665,14 @@
             }
           },
           "true_next" : null,
-          "false_next" : "node_48"
+          "false_next" : "node_45"
         },
         {
-          "name" : "node_48",
-          "id" : 15,
+          "name" : "node_45",
+          "id" : 14,
           "source_info" : {
             "filename" : "include/control/packetio.p4",
-            "line" : 47,
+            "line" : 48,
             "column" : 12,
             "source_fragment" : "standard_metadata.egress_port == 255"
           },
@@ -11322,15 +12690,15 @@
               }
             }
           },
-          "true_next" : "node_49",
-          "false_next" : "node_54"
+          "true_next" : "node_46",
+          "false_next" : "node_51"
         },
         {
-          "name" : "node_49",
-          "id" : 16,
+          "name" : "node_46",
+          "id" : 15,
           "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"
           },
@@ -11373,14 +12741,14 @@
             }
           },
           "true_next" : "tbl_pkt_io_egress_pop_vlan",
-          "false_next" : "node_51"
+          "false_next" : "node_48"
         },
         {
-          "name" : "node_51",
-          "id" : 17,
+          "name" : "node_48",
+          "id" : 16,
           "source_info" : {
             "filename" : "include/control/packetio.p4",
-            "line" : 51,
+            "line" : 52,
             "column" : 16,
             "source_fragment" : "fabric_metadata.is_multicast == true && ..."
           },
@@ -11433,11 +12801,11 @@
             }
           },
           "true_next" : "tbl_drop_now",
-          "false_next" : "tbl_act_16"
+          "false_next" : "tbl_act_15"
         },
         {
-          "name" : "node_54",
-          "id" : 18,
+          "name" : "node_51",
+          "id" : 17,
           "source_info" : {
             "filename" : "include/control/next.p4",
             "line" : 272,
@@ -11489,11 +12857,11 @@
           "false_next" : "FabricEgress.egress_next.egress_vlan"
         },
         {
-          "name" : "node_57",
-          "id" : 19,
+          "name" : "node_54",
+          "id" : 18,
           "source_info" : {
-            "filename" : "fabric.p4",
-            "line" : 101,
+            "filename" : "include/int/int_main.p4",
+            "line" : 98,
             "column" : 12,
             "source_fragment" : "standard_metadata.ingress_port != 255 && ..."
           },
@@ -11566,40 +12934,47 @@
             }
           },
           "false_next" : null,
-          "true_next" : "node_58"
+          "true_next" : "node_55"
         },
         {
-          "name" : "node_58",
-          "id" : 20,
+          "name" : "node_55",
+          "id" : 19,
           "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",
-          "false_next" : "node_60"
+          "true_next" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
+          "false_next" : "node_57"
         },
         {
-          "name" : "node_60",
-          "id" : 21,
+          "name" : "node_57",
+          "id" : 20,
           "source_info" : {
-            "filename" : "fabric.p4",
-            "line" : 107,
+            "filename" : "include/int/int_main.p4",
+            "line" : 106,
             "column" : 15,
             "source_fragment" : "hdr.int_header.isValid()"
           },
@@ -11615,14 +12990,71 @@
             }
           },
           "false_next" : null,
-          "true_next" : "FabricEgress.process_int_transit.tb_int_insert"
+          "true_next" : "tbl_act_16"
         },
         {
-          "name" : "node_65",
-          "id" : 22,
+          "name" : "node_60",
+          "id" : 21,
           "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 314,
+            "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_17",
+          "false_next" : "node_62"
+        },
+        {
+          "name" : "node_62",
+          "id" : 22,
+          "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"]
+                  }
+                }
+              }
+            }
+          },
+          "false_next" : null,
+          "true_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003"
+        },
+        {
+          "name" : "node_66",
+          "id" : 23,
+          "source_info" : {
+            "filename" : "include/int/int_transit.p4",
+            "line" : 377,
             "column" : 12,
             "source_fragment" : "hdr.ipv4.isValid()"
           },
@@ -11637,15 +13069,15 @@
               }
             }
           },
-          "true_next" : "tbl_process_int_outer_encap_int_update_ipv4",
-          "false_next" : "node_67"
+          "true_next" : "tbl_act_19",
+          "false_next" : "node_68"
         },
         {
-          "name" : "node_67",
-          "id" : 23,
+          "name" : "node_68",
+          "id" : 24,
           "source_info" : {
-            "filename" : "include/int_transit.p4",
-            "line" : 317,
+            "filename" : "include/int/int_transit.p4",
+            "line" : 380,
             "column" : 12,
             "source_fragment" : "hdr.udp.isValid()"
           },
@@ -11660,15 +13092,15 @@
               }
             }
           },
-          "true_next" : "tbl_process_int_outer_encap_int_update_udp",
-          "false_next" : "node_69"
+          "true_next" : "tbl_act_20",
+          "false_next" : "node_70"
         },
         {
-          "name" : "node_69",
-          "id" : 24,
+          "name" : "node_70",
+          "id" : 25,
           "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()"
           },
@@ -11683,60 +13115,8 @@
               }
             }
           },
-          "true_next" : "tbl_process_int_outer_encap_int_update_shim",
-          "false_next" : "node_71"
-        },
-        {
-          "name" : "node_71",
-          "id" : 25,
-          "source_info" : {
-            "filename" : "fabric.p4",
-            "line" : 111,
-            "column" : 20,
-            "source_fragment" : "standard_metadata.instance_type == 1"
-          },
-          "expression" : {
-            "type" : "expression",
-            "value" : {
-              "op" : "==",
-              "left" : {
-                "type" : "field",
-                "value" : ["standard_metadata", "instance_type"]
-              },
-              "right" : {
-                "type" : "hexstr",
-                "value" : "0x00000001"
-              }
-            }
-          },
-          "true_next" : "FabricEgress.process_int_report.tb_generate_report",
-          "false_next" : "node_73"
-        },
-        {
-          "name" : "node_73",
-          "id" : 26,
-          "source_info" : {
-            "filename" : "fabric.p4",
-            "line" : 115,
-            "column" : 20,
-            "source_fragment" : "fabric_metadata.int_meta.sink == 1"
-          },
-          "expression" : {
-            "type" : "expression",
-            "value" : {
-              "op" : "==",
-              "left" : {
-                "type" : "field",
-                "value" : ["userMetadata.int_meta", "sink"]
-              },
-              "right" : {
-                "type" : "hexstr",
-                "value" : "0x01"
-              }
-            }
-          },
           "false_next" : null,
-          "true_next" : "tbl_process_int_sink_restore_header"
+          "true_next" : "tbl_act_21"
         }
       ]
     }
diff --git a/pipelines/fabric/src/main/resources/p4c-out/fabric-int/bmv2/default/p4info.txt b/pipelines/fabric/src/main/resources/p4c-out/fabric-int/bmv2/default/p4info.txt
index 545564c..cc19487 100644
--- a/pipelines/fabric/src/main/resources/p4c-out/fabric-int/bmv2/default/p4info.txt
+++ b/pipelines/fabric/src/main/resources/p4c-out/fabric-int/bmv2/default/p4info.txt
@@ -18,30 +18,7 @@
     annotations: "@defaultonly()"
   }
   direct_resource_ids: 318787614
-  size: 256
-  idle_timeout_behavior: NO_TIMEOUT
-}
-tables {
-  preamble {
-    id: 33561619
-    name: "FabricIngress.process_set_source_sink.tb_set_sink"
-    alias: "tb_set_sink"
-  }
-  match_fields {
-    id: 1
-    name: "standard_metadata.egress_spec"
-    bitwidth: 9
-    match_type: EXACT
-  }
-  action_refs {
-    id: 16788951
-  }
-  action_refs {
-    id: 16800567
-    annotations: "@defaultonly()"
-  }
-  direct_resource_ids: 318770551
-  size: 256
+  size: 511
   idle_timeout_behavior: NO_TIMEOUT
 }
 tables {
@@ -409,8 +386,8 @@
 }
 tables {
   preamble {
-    id: 33566961
-    name: "FabricEgress.process_int_source.tb_int_source"
+    id: 33612258
+    name: "FabricEgress.process_int_main.process_int_source.tb_int_source"
     alias: "tb_int_source"
   }
   match_fields {
@@ -438,37 +415,36 @@
     match_type: TERNARY
   }
   action_refs {
-    id: 16807851
+    id: 16785857
   }
   action_refs {
     id: 16800567
     annotations: "@defaultonly()"
   }
-  direct_resource_ids: 318776637
+  direct_resource_ids: 318800047
   size: 1024
   idle_timeout_behavior: NO_TIMEOUT
 }
 tables {
   preamble {
-    id: 33602084
-    name: "FabricEgress.process_int_transit.tb_int_insert"
+    id: 33599867
+    name: "FabricEgress.process_int_main.process_int_transit.tb_int_insert"
     alias: "tb_int_insert"
   }
   action_refs {
-    id: 16806530
+    id: 16780783
   }
   action_refs {
     id: 16800567
     annotations: "@defaultonly()"
   }
-  direct_resource_ids: 318794595
-  size: 2
+  size: 1024
   idle_timeout_behavior: NO_TIMEOUT
 }
 tables {
   preamble {
-    id: 33561642
-    name: "FabricEgress.process_int_transit.tb_int_inst_0003"
+    id: 33569467
+    name: "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003"
     alias: "tb_int_inst_0003"
   }
   match_fields {
@@ -478,65 +454,65 @@
     match_type: EXACT
   }
   action_refs {
-    id: 16788439
+    id: 16809886
   }
   action_refs {
-    id: 16792702
+    id: 16783130
   }
   action_refs {
-    id: 16834796
+    id: 16809096
   }
   action_refs {
-    id: 16815381
+    id: 16834117
   }
   action_refs {
-    id: 16824457
+    id: 16825314
   }
   action_refs {
-    id: 16796364
+    id: 16811436
   }
   action_refs {
-    id: 16806322
+    id: 16802199
   }
   action_refs {
-    id: 16819063
+    id: 16796779
   }
   action_refs {
-    id: 16828306
+    id: 16787676
   }
   action_refs {
-    id: 16799786
+    id: 16825351
   }
   action_refs {
-    id: 16796975
+    id: 16793999
   }
   action_refs {
-    id: 16801652
+    id: 16786714
   }
   action_refs {
-    id: 16778440
+    id: 16814203
   }
   action_refs {
-    id: 16790887
+    id: 16807054
   }
   action_refs {
-    id: 16783849
+    id: 16800064
   }
   action_refs {
-    id: 16837726
+    id: 16792997
   }
   action_refs {
     id: 16800567
     annotations: "@defaultonly()"
   }
-  direct_resource_ids: 318777781
   size: 16
   idle_timeout_behavior: NO_TIMEOUT
+  is_const_table: true
 }
 tables {
   preamble {
-    id: 33571998
-    name: "FabricEgress.process_int_transit.tb_int_inst_0407"
+    id: 33595914
+    name: "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407"
     alias: "tb_int_inst_0407"
   }
   match_fields {
@@ -546,76 +522,60 @@
     match_type: EXACT
   }
   action_refs {
-    id: 16839298
+    id: 16819022
   }
   action_refs {
-    id: 16837018
+    id: 16804144
   }
   action_refs {
-    id: 16827414
+    id: 16829117
   }
   action_refs {
-    id: 16786021
+    id: 16797781
   }
   action_refs {
-    id: 16785131
+    id: 16813543
   }
   action_refs {
-    id: 16808652
+    id: 16824974
   }
   action_refs {
-    id: 16799296
+    id: 16815362
   }
   action_refs {
-    id: 16780668
+    id: 16835399
   }
   action_refs {
-    id: 16805625
+    id: 16834505
   }
   action_refs {
-    id: 16778495
+    id: 16811493
   }
   action_refs {
-    id: 16784981
+    id: 16825476
   }
   action_refs {
-    id: 16806353
+    id: 16799777
   }
   action_refs {
-    id: 16802140
+    id: 16829592
   }
   action_refs {
-    id: 16827601
+    id: 16805877
   }
   action_refs {
-    id: 16820295
+    id: 16780182
   }
   action_refs {
-    id: 16810955
+    id: 16799476
   }
   action_refs {
     id: 16800567
     annotations: "@defaultonly()"
   }
-  direct_resource_ids: 318818305
   size: 16
   idle_timeout_behavior: NO_TIMEOUT
-}
-tables {
-  preamble {
-    id: 33607792
-    name: "FabricEgress.process_int_report.tb_generate_report"
-    alias: "tb_generate_report"
-  }
-  action_refs {
-    id: 16814383
-  }
-  action_refs {
-    id: 16800567
-    annotations: "@defaultonly()"
-  }
-  size: 1024
-  idle_timeout_behavior: NO_TIMEOUT
+  is_const_table: true
 }
 tables {
   preamble {
@@ -669,13 +629,6 @@
 }
 actions {
   preamble {
-    id: 16788951
-    name: "FabricIngress.process_set_source_sink.int_set_sink"
-    alias: "int_set_sink"
-  }
-}
-actions {
-  preamble {
     id: 16798734
     name: "FabricIngress.filtering.drop"
     alias: "filtering.drop"
@@ -1048,8 +1001,8 @@
 }
 actions {
   preamble {
-    id: 16807851
-    name: "FabricEgress.process_int_source.int_source_dscp"
+    id: 16785857
+    name: "FabricEgress.process_int_main.process_int_source.int_source_dscp"
     alias: "int_source_dscp"
   }
   params {
@@ -1075,16 +1028,9 @@
 }
 actions {
   preamble {
-    id: 16806280
-    name: "FabricEgress.process_int_transit.int_update_total_hop_cnt"
-    alias: "int_update_total_hop_cnt"
-  }
-}
-actions {
-  preamble {
-    id: 16806530
-    name: "FabricEgress.process_int_transit.int_transit"
-    alias: "int_transit"
+    id: 16780783
+    name: "FabricEgress.process_int_main.process_int_transit.init_metadata"
+    alias: "init_metadata"
   }
   params {
     id: 1
@@ -1094,297 +1040,230 @@
 }
 actions {
   preamble {
-    id: 16788439
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i0"
+    id: 16809886
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0"
     alias: "int_set_header_0003_i0"
   }
 }
 actions {
   preamble {
-    id: 16792702
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i1"
+    id: 16783130
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1"
     alias: "int_set_header_0003_i1"
   }
 }
 actions {
   preamble {
-    id: 16834796
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i2"
+    id: 16809096
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2"
     alias: "int_set_header_0003_i2"
   }
 }
 actions {
   preamble {
-    id: 16815381
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i3"
+    id: 16834117
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3"
     alias: "int_set_header_0003_i3"
   }
 }
 actions {
   preamble {
-    id: 16824457
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i4"
+    id: 16825314
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4"
     alias: "int_set_header_0003_i4"
   }
 }
 actions {
   preamble {
-    id: 16796364
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i5"
+    id: 16811436
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5"
     alias: "int_set_header_0003_i5"
   }
 }
 actions {
   preamble {
-    id: 16806322
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i6"
+    id: 16802199
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6"
     alias: "int_set_header_0003_i6"
   }
 }
 actions {
   preamble {
-    id: 16819063
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i7"
+    id: 16796779
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7"
     alias: "int_set_header_0003_i7"
   }
 }
 actions {
   preamble {
-    id: 16828306
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i8"
+    id: 16787676
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8"
     alias: "int_set_header_0003_i8"
   }
 }
 actions {
   preamble {
-    id: 16799786
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i9"
+    id: 16825351
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9"
     alias: "int_set_header_0003_i9"
   }
 }
 actions {
   preamble {
-    id: 16796975
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i10"
+    id: 16793999
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10"
     alias: "int_set_header_0003_i10"
   }
 }
 actions {
   preamble {
-    id: 16801652
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i11"
+    id: 16786714
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11"
     alias: "int_set_header_0003_i11"
   }
 }
 actions {
   preamble {
-    id: 16778440
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i12"
+    id: 16814203
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12"
     alias: "int_set_header_0003_i12"
   }
 }
 actions {
   preamble {
-    id: 16790887
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i13"
+    id: 16807054
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13"
     alias: "int_set_header_0003_i13"
   }
 }
 actions {
   preamble {
-    id: 16783849
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i14"
+    id: 16800064
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14"
     alias: "int_set_header_0003_i14"
   }
 }
 actions {
   preamble {
-    id: 16837726
-    name: "FabricEgress.process_int_transit.int_set_header_0003_i15"
+    id: 16792997
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15"
     alias: "int_set_header_0003_i15"
   }
 }
 actions {
   preamble {
-    id: 16839298
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i0"
+    id: 16819022
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0"
     alias: "int_set_header_0407_i0"
   }
 }
 actions {
   preamble {
-    id: 16837018
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i1"
+    id: 16804144
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1"
     alias: "int_set_header_0407_i1"
   }
 }
 actions {
   preamble {
-    id: 16827414
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i2"
+    id: 16829117
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2"
     alias: "int_set_header_0407_i2"
   }
 }
 actions {
   preamble {
-    id: 16786021
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i3"
+    id: 16797781
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3"
     alias: "int_set_header_0407_i3"
   }
 }
 actions {
   preamble {
-    id: 16785131
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i4"
+    id: 16813543
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4"
     alias: "int_set_header_0407_i4"
   }
 }
 actions {
   preamble {
-    id: 16808652
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i5"
+    id: 16824974
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5"
     alias: "int_set_header_0407_i5"
   }
 }
 actions {
   preamble {
-    id: 16799296
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i6"
+    id: 16815362
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6"
     alias: "int_set_header_0407_i6"
   }
 }
 actions {
   preamble {
-    id: 16780668
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i7"
+    id: 16835399
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7"
     alias: "int_set_header_0407_i7"
   }
 }
 actions {
   preamble {
-    id: 16805625
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i8"
+    id: 16834505
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8"
     alias: "int_set_header_0407_i8"
   }
 }
 actions {
   preamble {
-    id: 16778495
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i9"
+    id: 16811493
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9"
     alias: "int_set_header_0407_i9"
   }
 }
 actions {
   preamble {
-    id: 16784981
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i10"
+    id: 16825476
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10"
     alias: "int_set_header_0407_i10"
   }
 }
 actions {
   preamble {
-    id: 16806353
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i11"
+    id: 16799777
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11"
     alias: "int_set_header_0407_i11"
   }
 }
 actions {
   preamble {
-    id: 16802140
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i12"
+    id: 16829592
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12"
     alias: "int_set_header_0407_i12"
   }
 }
 actions {
   preamble {
-    id: 16827601
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i13"
+    id: 16805877
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13"
     alias: "int_set_header_0407_i13"
   }
 }
 actions {
   preamble {
-    id: 16820295
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i14"
+    id: 16780182
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14"
     alias: "int_set_header_0407_i14"
   }
 }
 actions {
   preamble {
-    id: 16810955
-    name: "FabricEgress.process_int_transit.int_set_header_0407_i15"
+    id: 16799476
+    name: "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15"
     alias: "int_set_header_0407_i15"
   }
 }
 actions {
   preamble {
-    id: 16816602
-    name: "FabricEgress.process_int_outer_encap.int_update_ipv4"
-    alias: "int_update_ipv4"
-  }
-}
-actions {
-  preamble {
-    id: 16829666
-    name: "FabricEgress.process_int_outer_encap.int_update_udp"
-    alias: "int_update_udp"
-  }
-}
-actions {
-  preamble {
-    id: 16826978
-    name: "FabricEgress.process_int_outer_encap.int_update_shim"
-    alias: "int_update_shim"
-  }
-}
-actions {
-  preamble {
-    id: 16814383
-    name: "FabricEgress.process_int_report.do_report_encapsulation"
-    alias: "do_report_encapsulation"
-  }
-  params {
-    id: 1
-    name: "src_mac"
-    bitwidth: 48
-  }
-  params {
-    id: 2
-    name: "mon_mac"
-    bitwidth: 48
-  }
-  params {
-    id: 3
-    name: "src_ip"
-    bitwidth: 32
-  }
-  params {
-    id: 4
-    name: "mon_ip"
-    bitwidth: 32
-  }
-  params {
-    id: 5
-    name: "mon_port"
-    bitwidth: 16
-  }
-}
-actions {
-  preamble {
-    id: 16810741
-    name: "FabricEgress.process_int_sink.restore_header"
-    alias: "restore_header"
-  }
-}
-actions {
-  preamble {
-    id: 16787662
-    name: "FabricEgress.process_int_sink.int_sink"
-    alias: "int_sink"
-  }
-}
-actions {
-  preamble {
     id: 16801047
     name: "FabricEgress.pkt_io_egress.pop_vlan"
     alias: "pkt_io_egress.pop_vlan"
@@ -1442,17 +1321,6 @@
 }
 direct_counters {
   preamble {
-    id: 318770551
-    name: "FabricIngress.process_set_source_sink.counter_set_sink"
-    alias: "counter_set_sink"
-  }
-  spec {
-    unit: BOTH
-  }
-  direct_table_id: 33561619
-}
-direct_counters {
-  preamble {
     id: 318815501
     name: "FabricIngress.filtering.ingress_port_vlan_counter"
     alias: "ingress_port_vlan_counter"
@@ -1563,47 +1431,14 @@
 }
 direct_counters {
   preamble {
-    id: 318776637
-    name: "FabricEgress.process_int_source.counter_int_source"
+    id: 318800047
+    name: "FabricEgress.process_int_main.process_int_source.counter_int_source"
     alias: "counter_int_source"
   }
   spec {
     unit: BOTH
   }
-  direct_table_id: 33566961
-}
-direct_counters {
-  preamble {
-    id: 318794595
-    name: "FabricEgress.process_int_transit.counter_int_insert"
-    alias: "counter_int_insert"
-  }
-  spec {
-    unit: BOTH
-  }
-  direct_table_id: 33602084
-}
-direct_counters {
-  preamble {
-    id: 318777781
-    name: "FabricEgress.process_int_transit.counter_int_inst_0003"
-    alias: "counter_int_inst_0003"
-  }
-  spec {
-    unit: BOTH
-  }
-  direct_table_id: 33561642
-}
-direct_counters {
-  preamble {
-    id: 318818305
-    name: "FabricEgress.process_int_transit.counter_int_inst_0407"
-    alias: "counter_int_inst_0407"
-  }
-  spec {
-    unit: BOTH
-  }
-  direct_table_id: 33571998
+  direct_table_id: 33612258
 }
 direct_counters {
   preamble {
diff --git a/pipelines/fabric/src/main/resources/p4c-out/fabric-spgw/bmv2/default/bmv2.json b/pipelines/fabric/src/main/resources/p4c-out/fabric-spgw/bmv2/default/bmv2.json
index 160814c..2d97498 100644
--- a/pipelines/fabric/src/main/resources/p4c-out/fabric-spgw/bmv2/default/bmv2.json
+++ b/pipelines/fabric/src/main/resources/p4c-out/fabric-spgw/bmv2/default/bmv2.json
@@ -930,7 +930,7 @@
       "id" : 0,
       "source_info" : {
         "filename" : "include/parser.p4",
-        "line" : 223,
+        "line" : 228,
         "column" : 8,
         "source_fragment" : "FabricDeparser"
       },
@@ -1578,7 +1578,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 89,
+            "line" : 91,
             "column" : 31,
             "source_fragment" : "0x8100; ..."
           }
@@ -2211,7 +2211,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 90,
+            "line" : 92,
             "column" : 31,
             "source_fragment" : "0x8847; ..."
           }
@@ -2287,7 +2287,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 113,
+            "line" : 115,
             "column" : 32,
             "source_fragment" : "64; ..."
           }
@@ -2402,7 +2402,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 90,
+            "line" : 92,
             "column" : 31,
             "source_fragment" : "0x8847; ..."
           }
@@ -2478,7 +2478,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 113,
+            "line" : 115,
             "column" : 32,
             "source_fragment" : "64; ..."
           }
@@ -2770,7 +2770,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 90,
+            "line" : 92,
             "column" : 31,
             "source_fragment" : "0x8847; ..."
           }
@@ -2846,7 +2846,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 113,
+            "line" : 115,
             "column" : 32,
             "source_fragment" : "64; ..."
           }
@@ -2961,7 +2961,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 90,
+            "line" : 92,
             "column" : 31,
             "source_fragment" : "0x8847; ..."
           }
@@ -3037,7 +3037,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 113,
+            "line" : 115,
             "column" : 32,
             "source_fragment" : "64; ..."
           }
@@ -3155,7 +3155,7 @@
           ],
           "source_info" : {
             "filename" : "fabric.p4",
-            "line" : 57,
+            "line" : 54,
             "column" : 50,
             "source_fragment" : "hdr.gtpu_ipv4"
           }
@@ -3170,7 +3170,7 @@
           ],
           "source_info" : {
             "filename" : "fabric.p4",
-            "line" : 57,
+            "line" : 54,
             "column" : 65,
             "source_fragment" : "hdr.gtpu_udp"
           }
@@ -3461,7 +3461,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 119,
+            "line" : 121,
             "column" : 36,
             "source_fragment" : "2w1; ..."
           }
@@ -3547,7 +3547,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 120,
+            "line" : 122,
             "column" : 38,
             "source_fragment" : "2w2; ..."
           }
@@ -3573,7 +3573,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 118,
+            "line" : 120,
             "column" : 37,
             "source_fragment" : "2w0; ..."
           }
@@ -3744,7 +3744,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 109,
+            "line" : 111,
             "column" : 31,
             "source_fragment" : "7; ..."
           }
@@ -3770,7 +3770,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 92,
+            "line" : 94,
             "column" : 31,
             "source_fragment" : "0x0800; ..."
           }
@@ -4301,7 +4301,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 101,
+            "line" : 103,
             "column" : 28,
             "source_fragment" : "5; ..."
           }
@@ -4457,7 +4457,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 114,
+            "line" : 116,
             "column" : 32,
             "source_fragment" : "64; ..."
           }
@@ -4476,7 +4476,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 98,
+            "line" : 100,
             "column" : 25,
             "source_fragment" : "17; ..."
           }
@@ -4859,7 +4859,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"
           }
@@ -4874,7 +4874,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/packetio.p4",
-            "line" : 40,
+            "line" : 41,
             "column" : 8,
             "source_fragment" : "hdr.vlan_tag.setInvalid()"
           }
@@ -4937,7 +4937,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/packetio.p4",
-            "line" : 56,
+            "line" : 57,
             "column" : 12,
             "source_fragment" : "hdr.packet_in.setValid()"
           }
@@ -4956,7 +4956,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/packetio.p4",
-            "line" : 57,
+            "line" : 58,
             "column" : 12,
             "source_fragment" : "hdr.packet_in.ingress_port = standard_metadata.ingress_port"
           }
@@ -4970,7 +4970,7 @@
       "id" : 0,
       "source_info" : {
         "filename" : "fabric.p4",
-        "line" : 43,
+        "line" : 40,
         "column" : 8,
         "source_fragment" : "FabricIngress"
       },
@@ -6799,7 +6799,7 @@
       "id" : 1,
       "source_info" : {
         "filename" : "fabric.p4",
-        "line" : 87,
+        "line" : 79,
         "column" : 8,
         "source_fragment" : "FabricEgress"
       },
@@ -6971,7 +6971,7 @@
           "id" : 20,
           "source_info" : {
             "filename" : "include/control/packetio.p4",
-            "line" : 43,
+            "line" : 44,
             "column" : 12,
             "source_fragment" : "fabric_metadata.is_controller_packet_out == true"
           },
@@ -7004,7 +7004,7 @@
           "id" : 21,
           "source_info" : {
             "filename" : "include/control/packetio.p4",
-            "line" : 47,
+            "line" : 48,
             "column" : 12,
             "source_fragment" : "standard_metadata.egress_port == 255"
           },
@@ -7030,7 +7030,7 @@
           "id" : 22,
           "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"
           },
@@ -7080,7 +7080,7 @@
           "id" : 23,
           "source_info" : {
             "filename" : "include/control/packetio.p4",
-            "line" : 51,
+            "line" : 52,
             "column" : 16,
             "source_fragment" : "fabric_metadata.is_multicast == true && ..."
           },
diff --git a/pipelines/fabric/src/main/resources/p4c-out/fabric/bmv2/default/bmv2.json b/pipelines/fabric/src/main/resources/p4c-out/fabric/bmv2/default/bmv2.json
index e7c2981..0623d6c 100644
--- a/pipelines/fabric/src/main/resources/p4c-out/fabric/bmv2/default/bmv2.json
+++ b/pipelines/fabric/src/main/resources/p4c-out/fabric/bmv2/default/bmv2.json
@@ -634,7 +634,12 @@
               "next_state" : null
             }
           ],
-          "transition_key" : []
+          "transition_key" : [
+            {
+              "type" : "field",
+              "value" : ["udp", "dst_port"]
+            }
+          ]
         },
         {
           "name" : "parse_icmp",
@@ -669,7 +674,7 @@
       "id" : 0,
       "source_info" : {
         "filename" : "include/parser.p4",
-        "line" : 223,
+        "line" : 228,
         "column" : 8,
         "source_fragment" : "FabricDeparser"
       },
@@ -1082,7 +1087,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 89,
+            "line" : 91,
             "column" : 31,
             "source_fragment" : "0x8100; ..."
           }
@@ -1715,7 +1720,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 90,
+            "line" : 92,
             "column" : 31,
             "source_fragment" : "0x8847; ..."
           }
@@ -1791,7 +1796,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 113,
+            "line" : 115,
             "column" : 32,
             "source_fragment" : "64; ..."
           }
@@ -1906,7 +1911,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 90,
+            "line" : 92,
             "column" : 31,
             "source_fragment" : "0x8847; ..."
           }
@@ -1982,7 +1987,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 113,
+            "line" : 115,
             "column" : 32,
             "source_fragment" : "64; ..."
           }
@@ -2274,7 +2279,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 90,
+            "line" : 92,
             "column" : 31,
             "source_fragment" : "0x8847; ..."
           }
@@ -2350,7 +2355,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 113,
+            "line" : 115,
             "column" : 32,
             "source_fragment" : "64; ..."
           }
@@ -2465,7 +2470,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 90,
+            "line" : 92,
             "column" : 31,
             "source_fragment" : "0x8847; ..."
           }
@@ -2541,7 +2546,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 113,
+            "line" : 115,
             "column" : 32,
             "source_fragment" : "64; ..."
           }
@@ -2757,7 +2762,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 109,
+            "line" : 111,
             "column" : 31,
             "source_fragment" : "7; ..."
           }
@@ -2783,7 +2788,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/../define.p4",
-            "line" : 92,
+            "line" : 94,
             "column" : 31,
             "source_fragment" : "0x0800; ..."
           }
@@ -3280,7 +3285,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"
           }
@@ -3295,7 +3300,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/packetio.p4",
-            "line" : 40,
+            "line" : 41,
             "column" : 8,
             "source_fragment" : "hdr.vlan_tag.setInvalid()"
           }
@@ -3358,7 +3363,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/packetio.p4",
-            "line" : 56,
+            "line" : 57,
             "column" : 12,
             "source_fragment" : "hdr.packet_in.setValid()"
           }
@@ -3377,7 +3382,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/packetio.p4",
-            "line" : 57,
+            "line" : 58,
             "column" : 12,
             "source_fragment" : "hdr.packet_in.ingress_port = standard_metadata.ingress_port"
           }
@@ -3391,7 +3396,7 @@
       "id" : 0,
       "source_info" : {
         "filename" : "fabric.p4",
-        "line" : 43,
+        "line" : 40,
         "column" : 8,
         "source_fragment" : "FabricIngress"
       },
@@ -4607,7 +4612,7 @@
       "id" : 1,
       "source_info" : {
         "filename" : "fabric.p4",
-        "line" : 87,
+        "line" : 79,
         "column" : 8,
         "source_fragment" : "FabricEgress"
       },
@@ -4756,7 +4761,7 @@
           "id" : 13,
           "source_info" : {
             "filename" : "include/control/packetio.p4",
-            "line" : 43,
+            "line" : 44,
             "column" : 12,
             "source_fragment" : "fabric_metadata.is_controller_packet_out == true"
           },
@@ -4789,7 +4794,7 @@
           "id" : 14,
           "source_info" : {
             "filename" : "include/control/packetio.p4",
-            "line" : 47,
+            "line" : 48,
             "column" : 12,
             "source_fragment" : "standard_metadata.egress_port == 255"
           },
@@ -4815,7 +4820,7 @@
           "id" : 15,
           "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"
           },
@@ -4865,7 +4870,7 @@
           "id" : 16,
           "source_info" : {
             "filename" : "include/control/packetio.p4",
-            "line" : 51,
+            "line" : 52,
             "column" : 16,
             "source_fragment" : "fabric_metadata.is_multicast == true && ..."
           },