[GDS] Initial PRGA top GDS
diff --git a/gds/tile_clb.gds b/gds/tile_clb.gds
new file mode 100644
index 0000000..3ebb99c
--- /dev/null
+++ b/gds/tile_clb.gds
Binary files differ
diff --git a/gds/top.tgz b/gds/top.tgz
new file mode 100644
index 0000000..ac58003
--- /dev/null
+++ b/gds/top.tgz
Binary files differ
diff --git a/lef/tile_clb.lef b/lef/tile_clb.lef
new file mode 100644
index 0000000..a088492
--- /dev/null
+++ b/lef/tile_clb.lef
@@ -0,0 +1,565 @@
+VERSION 5.7 ;
+  NOWIREEXTENSIONATPIN ON ;
+  DIVIDERCHAR "/" ;
+  BUSBITCHARS "[]" ;
+MACRO tile_clb
+  CLASS BLOCK ;
+  FOREIGN tile_clb ;
+  ORIGIN 0.000 0.000 ;
+  SIZE 165.600 BY 217.600 ;
+  PIN bi_u1y0n_L1[0]
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 4.450 4.000 4.730 ;
+    END
+  END bi_u1y0n_L1[0]
+  PIN bi_u1y0n_L1[10]
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 185.670 4.000 185.950 ;
+    END
+  END bi_u1y0n_L1[10]
+  PIN bi_u1y0n_L1[11]
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 203.690 4.000 203.970 ;
+    END
+  END bi_u1y0n_L1[11]
+  PIN bi_u1y0n_L1[1]
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 22.470 4.000 22.750 ;
+    END
+  END bi_u1y0n_L1[1]
+  PIN bi_u1y0n_L1[2]
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 40.490 4.000 40.770 ;
+    END
+  END bi_u1y0n_L1[2]
+  PIN bi_u1y0n_L1[3]
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 58.850 4.000 59.130 ;
+    END
+  END bi_u1y0n_L1[3]
+  PIN bi_u1y0n_L1[4]
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 76.870 4.000 77.150 ;
+    END
+  END bi_u1y0n_L1[4]
+  PIN bi_u1y0n_L1[5]
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 94.890 4.000 95.170 ;
+    END
+  END bi_u1y0n_L1[5]
+  PIN bi_u1y0n_L1[6]
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 113.250 4.000 113.530 ;
+    END
+  END bi_u1y0n_L1[6]
+  PIN bi_u1y0n_L1[7]
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 131.270 4.000 131.550 ;
+    END
+  END bi_u1y0n_L1[7]
+  PIN bi_u1y0n_L1[8]
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 149.290 4.000 149.570 ;
+    END
+  END bi_u1y0n_L1[8]
+  PIN bi_u1y0n_L1[9]
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 167.650 4.000 167.930 ;
+    END
+  END bi_u1y0n_L1[9]
+  PIN bi_u1y0s_L1[0]
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 13.290 4.000 13.570 ;
+    END
+  END bi_u1y0s_L1[0]
+  PIN bi_u1y0s_L1[10]
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 194.850 4.000 195.130 ;
+    END
+  END bi_u1y0s_L1[10]
+  PIN bi_u1y0s_L1[11]
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 212.870 4.000 213.150 ;
+    END
+  END bi_u1y0s_L1[11]
+  PIN bi_u1y0s_L1[1]
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 31.650 4.000 31.930 ;
+    END
+  END bi_u1y0s_L1[1]
+  PIN bi_u1y0s_L1[2]
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 49.670 4.000 49.950 ;
+    END
+  END bi_u1y0s_L1[2]
+  PIN bi_u1y0s_L1[3]
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 67.690 4.000 67.970 ;
+    END
+  END bi_u1y0s_L1[3]
+  PIN bi_u1y0s_L1[4]
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 86.050 4.000 86.330 ;
+    END
+  END bi_u1y0s_L1[4]
+  PIN bi_u1y0s_L1[5]
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 104.070 4.000 104.350 ;
+    END
+  END bi_u1y0s_L1[5]
+  PIN bi_u1y0s_L1[6]
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 122.090 4.000 122.370 ;
+    END
+  END bi_u1y0s_L1[6]
+  PIN bi_u1y0s_L1[7]
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 140.450 4.000 140.730 ;
+    END
+  END bi_u1y0s_L1[7]
+  PIN bi_u1y0s_L1[8]
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 158.470 4.000 158.750 ;
+    END
+  END bi_u1y0s_L1[8]
+  PIN bi_u1y0s_L1[9]
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 176.490 4.000 176.770 ;
+    END
+  END bi_u1y0s_L1[9]
+  PIN clk
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 13.890 0.000 14.170 4.000 ;
+    END
+  END clk
+  PIN cu_x0y0n_L1[0]
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 161.600 4.450 165.600 4.730 ;
+    END
+  END cu_x0y0n_L1[0]
+  PIN cu_x0y0n_L1[10]
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 161.600 185.670 165.600 185.950 ;
+    END
+  END cu_x0y0n_L1[10]
+  PIN cu_x0y0n_L1[11]
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 161.600 203.690 165.600 203.970 ;
+    END
+  END cu_x0y0n_L1[11]
+  PIN cu_x0y0n_L1[1]
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 161.600 22.470 165.600 22.750 ;
+    END
+  END cu_x0y0n_L1[1]
+  PIN cu_x0y0n_L1[2]
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 161.600 40.490 165.600 40.770 ;
+    END
+  END cu_x0y0n_L1[2]
+  PIN cu_x0y0n_L1[3]
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 161.600 58.850 165.600 59.130 ;
+    END
+  END cu_x0y0n_L1[3]
+  PIN cu_x0y0n_L1[4]
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 161.600 76.870 165.600 77.150 ;
+    END
+  END cu_x0y0n_L1[4]
+  PIN cu_x0y0n_L1[5]
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 161.600 94.890 165.600 95.170 ;
+    END
+  END cu_x0y0n_L1[5]
+  PIN cu_x0y0n_L1[6]
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 161.600 113.250 165.600 113.530 ;
+    END
+  END cu_x0y0n_L1[6]
+  PIN cu_x0y0n_L1[7]
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 161.600 131.270 165.600 131.550 ;
+    END
+  END cu_x0y0n_L1[7]
+  PIN cu_x0y0n_L1[8]
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 161.600 149.290 165.600 149.570 ;
+    END
+  END cu_x0y0n_L1[8]
+  PIN cu_x0y0n_L1[9]
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 161.600 167.650 165.600 167.930 ;
+    END
+  END cu_x0y0n_L1[9]
+  PIN cu_x0y0s_L1[0]
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 161.600 13.290 165.600 13.570 ;
+    END
+  END cu_x0y0s_L1[0]
+  PIN cu_x0y0s_L1[10]
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 161.600 194.850 165.600 195.130 ;
+    END
+  END cu_x0y0s_L1[10]
+  PIN cu_x0y0s_L1[11]
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 161.600 212.870 165.600 213.150 ;
+    END
+  END cu_x0y0s_L1[11]
+  PIN cu_x0y0s_L1[1]
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 161.600 31.650 165.600 31.930 ;
+    END
+  END cu_x0y0s_L1[1]
+  PIN cu_x0y0s_L1[2]
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 161.600 49.670 165.600 49.950 ;
+    END
+  END cu_x0y0s_L1[2]
+  PIN cu_x0y0s_L1[3]
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 161.600 67.690 165.600 67.970 ;
+    END
+  END cu_x0y0s_L1[3]
+  PIN cu_x0y0s_L1[4]
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 161.600 86.050 165.600 86.330 ;
+    END
+  END cu_x0y0s_L1[4]
+  PIN cu_x0y0s_L1[5]
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 161.600 104.070 165.600 104.350 ;
+    END
+  END cu_x0y0s_L1[5]
+  PIN cu_x0y0s_L1[6]
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 161.600 122.090 165.600 122.370 ;
+    END
+  END cu_x0y0s_L1[6]
+  PIN cu_x0y0s_L1[7]
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 161.600 140.450 165.600 140.730 ;
+    END
+  END cu_x0y0s_L1[7]
+  PIN cu_x0y0s_L1[8]
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 161.600 158.470 165.600 158.750 ;
+    END
+  END cu_x0y0s_L1[8]
+  PIN cu_x0y0s_L1[9]
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met1 ;
+        RECT 161.600 176.490 165.600 176.770 ;
+    END
+  END cu_x0y0s_L1[9]
+  PIN prog_clk
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 151.890 0.000 152.170 4.000 ;
+    END
+  END prog_clk
+  PIN prog_din
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 41.490 0.000 41.770 4.000 ;
+    END
+  END prog_din
+  PIN prog_done
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 96.690 0.000 96.970 4.000 ;
+    END
+  END prog_done
+  PIN prog_dout
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 41.490 213.600 41.770 217.600 ;
+    END
+  END prog_dout
+  PIN prog_rst
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 69.090 0.000 69.370 4.000 ;
+    END
+  END prog_rst
+  PIN prog_we
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 124.290 0.000 124.570 4.000 ;
+    END
+  END prog_we
+  PIN prog_we_o
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 124.290 213.600 124.570 217.600 ;
+    END
+  END prog_we_o
+  PIN vccd1
+    DIRECTION INPUT ;
+    USE POWER ;
+    PORT
+      LAYER met2 ;
+        RECT 10.670 5.200 10.950 212.400 ;
+    END
+    PORT
+      LAYER met2 ;
+        RECT 62.190 5.200 62.470 212.400 ;
+    END
+    PORT
+      LAYER met2 ;
+        RECT 113.710 5.200 113.990 212.400 ;
+    END
+  END vccd1
+  PIN vssd1
+    DIRECTION INPUT ;
+    USE GROUND ;
+    PORT
+      LAYER met2 ;
+        RECT 36.430 5.200 36.710 212.400 ;
+    END
+    PORT
+      LAYER met2 ;
+        RECT 87.950 5.200 88.230 212.400 ;
+    END
+    PORT
+      LAYER met2 ;
+        RECT 139.470 5.200 139.750 212.400 ;
+    END
+  END vssd1
+  OBS
+      LAYER li1 ;
+        RECT 4.745 2.465 160.080 212.245 ;
+      LAYER met1 ;
+        RECT 4.280 212.590 161.320 213.140 ;
+        RECT 3.840 204.250 161.760 212.590 ;
+        RECT 4.280 203.410 161.320 204.250 ;
+        RECT 3.840 195.410 161.760 203.410 ;
+        RECT 4.280 194.570 161.320 195.410 ;
+        RECT 3.840 186.230 161.760 194.570 ;
+        RECT 4.280 185.390 161.320 186.230 ;
+        RECT 3.840 177.050 161.760 185.390 ;
+        RECT 4.280 176.210 161.320 177.050 ;
+        RECT 3.840 168.210 161.760 176.210 ;
+        RECT 4.280 167.370 161.320 168.210 ;
+        RECT 3.840 159.030 161.760 167.370 ;
+        RECT 4.280 158.190 161.320 159.030 ;
+        RECT 3.840 149.850 161.760 158.190 ;
+        RECT 4.280 149.010 161.320 149.850 ;
+        RECT 3.840 141.010 161.760 149.010 ;
+        RECT 4.280 140.170 161.320 141.010 ;
+        RECT 3.840 131.830 161.760 140.170 ;
+        RECT 4.280 130.990 161.320 131.830 ;
+        RECT 3.840 122.650 161.760 130.990 ;
+        RECT 4.280 121.810 161.320 122.650 ;
+        RECT 3.840 113.810 161.760 121.810 ;
+        RECT 4.280 112.970 161.320 113.810 ;
+        RECT 3.840 104.630 161.760 112.970 ;
+        RECT 4.280 103.790 161.320 104.630 ;
+        RECT 3.840 95.450 161.760 103.790 ;
+        RECT 4.280 94.610 161.320 95.450 ;
+        RECT 3.840 86.610 161.760 94.610 ;
+        RECT 4.280 85.770 161.320 86.610 ;
+        RECT 3.840 77.430 161.760 85.770 ;
+        RECT 4.280 76.590 161.320 77.430 ;
+        RECT 3.840 68.250 161.760 76.590 ;
+        RECT 4.280 67.410 161.320 68.250 ;
+        RECT 3.840 59.410 161.760 67.410 ;
+        RECT 4.280 58.570 161.320 59.410 ;
+        RECT 3.840 50.230 161.760 58.570 ;
+        RECT 4.280 49.390 161.320 50.230 ;
+        RECT 3.840 41.050 161.760 49.390 ;
+        RECT 4.280 40.210 161.320 41.050 ;
+        RECT 3.840 32.210 161.760 40.210 ;
+        RECT 4.280 31.370 161.320 32.210 ;
+        RECT 3.840 23.030 161.760 31.370 ;
+        RECT 4.280 22.190 161.320 23.030 ;
+        RECT 3.840 13.850 161.760 22.190 ;
+        RECT 4.280 13.010 161.320 13.850 ;
+        RECT 3.840 5.010 161.760 13.010 ;
+        RECT 4.280 4.170 161.320 5.010 ;
+        RECT 3.840 2.420 161.760 4.170 ;
+      LAYER met2 ;
+        RECT 5.160 213.320 41.210 213.600 ;
+        RECT 42.050 213.320 124.010 213.600 ;
+        RECT 124.850 213.320 158.140 213.600 ;
+        RECT 5.160 212.680 158.140 213.320 ;
+        RECT 5.160 4.920 10.390 212.680 ;
+        RECT 11.230 4.920 36.150 212.680 ;
+        RECT 36.990 4.920 61.910 212.680 ;
+        RECT 62.750 4.920 87.670 212.680 ;
+        RECT 88.510 4.920 113.430 212.680 ;
+        RECT 114.270 4.920 139.190 212.680 ;
+        RECT 140.030 4.920 158.140 212.680 ;
+        RECT 5.160 4.280 158.140 4.920 ;
+        RECT 5.160 2.390 13.610 4.280 ;
+        RECT 14.450 2.390 41.210 4.280 ;
+        RECT 42.050 2.390 68.810 4.280 ;
+        RECT 69.650 2.390 96.410 4.280 ;
+        RECT 97.250 2.390 124.010 4.280 ;
+        RECT 124.850 2.390 151.610 4.280 ;
+        RECT 152.450 2.390 158.140 4.280 ;
+  END
+END tile_clb
+END LIBRARY
+
diff --git a/lef/top.lef b/lef/top.lef
new file mode 100644
index 0000000..4e16cb8
--- /dev/null
+++ b/lef/top.lef
@@ -0,0 +1,1561 @@
+VERSION 5.7 ;
+  NOWIREEXTENSIONATPIN ON ;
+  DIVIDERCHAR "/" ;
+  BUSBITCHARS "[]" ;
+MACRO top
+  CLASS BLOCK ;
+  FOREIGN top ;
+  ORIGIN 0.000 0.000 ;
+  SIZE 2600.000 BY 3200.000 ;
+  PIN ipin_x0y1_0
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 33.360 4.000 33.960 ;
+    END
+  END ipin_x0y1_0
+  PIN ipin_x0y1_1
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 100.000 4.000 100.600 ;
+    END
+  END ipin_x0y1_1
+  PIN ipin_x0y2_0
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 166.640 4.000 167.240 ;
+    END
+  END ipin_x0y2_0
+  PIN ipin_x0y2_1
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 233.280 4.000 233.880 ;
+    END
+  END ipin_x0y2_1
+  PIN ipin_x0y3_0
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 299.920 4.000 300.520 ;
+    END
+  END ipin_x0y3_0
+  PIN ipin_x0y3_1
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 366.560 4.000 367.160 ;
+    END
+  END ipin_x0y3_1
+  PIN ipin_x0y4_0
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 433.200 4.000 433.800 ;
+    END
+  END ipin_x0y4_0
+  PIN ipin_x0y4_1
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 499.840 4.000 500.440 ;
+    END
+  END ipin_x0y4_1
+  PIN ipin_x0y5_0
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 566.480 4.000 567.080 ;
+    END
+  END ipin_x0y5_0
+  PIN ipin_x0y5_1
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 633.120 4.000 633.720 ;
+    END
+  END ipin_x0y5_1
+  PIN ipin_x0y6_0
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 699.760 4.000 700.360 ;
+    END
+  END ipin_x0y6_0
+  PIN ipin_x0y6_1
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 766.400 4.000 767.000 ;
+    END
+  END ipin_x0y6_1
+  PIN ipin_x0y7_0
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 833.040 4.000 833.640 ;
+    END
+  END ipin_x0y7_0
+  PIN ipin_x0y7_1
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 899.680 4.000 900.280 ;
+    END
+  END ipin_x0y7_1
+  PIN ipin_x0y8_0
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 966.320 4.000 966.920 ;
+    END
+  END ipin_x0y8_0
+  PIN ipin_x0y8_1
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 1032.960 4.000 1033.560 ;
+    END
+  END ipin_x0y8_1
+  PIN ipin_x1y9_0
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 26.770 3196.000 27.050 3200.000 ;
+    END
+  END ipin_x1y9_0
+  PIN ipin_x1y9_1
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 80.590 3196.000 80.870 3200.000 ;
+    END
+  END ipin_x1y9_1
+  PIN ipin_x2y9_0
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 134.870 3196.000 135.150 3200.000 ;
+    END
+  END ipin_x2y9_0
+  PIN ipin_x2y9_1
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 189.150 3196.000 189.430 3200.000 ;
+    END
+  END ipin_x2y9_1
+  PIN ipin_x3y9_0
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 243.430 3196.000 243.710 3200.000 ;
+    END
+  END ipin_x3y9_0
+  PIN ipin_x3y9_1
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 297.250 3196.000 297.530 3200.000 ;
+    END
+  END ipin_x3y9_1
+  PIN ipin_x4y9_0
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 351.530 3196.000 351.810 3200.000 ;
+    END
+  END ipin_x4y9_0
+  PIN ipin_x4y9_1
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 405.810 3196.000 406.090 3200.000 ;
+    END
+  END ipin_x4y9_1
+  PIN ipin_x5y9_0
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 460.090 3196.000 460.370 3200.000 ;
+    END
+  END ipin_x5y9_0
+  PIN ipin_x5y9_1
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 513.910 3196.000 514.190 3200.000 ;
+    END
+  END ipin_x5y9_1
+  PIN ipin_x6y9_0
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 568.190 3196.000 568.470 3200.000 ;
+    END
+  END ipin_x6y9_0
+  PIN ipin_x6y9_1
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 622.470 3196.000 622.750 3200.000 ;
+    END
+  END ipin_x6y9_1
+  PIN ipin_x7y9_0
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 676.750 3196.000 677.030 3200.000 ;
+    END
+  END ipin_x7y9_0
+  PIN ipin_x7y9_1
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 730.570 3196.000 730.850 3200.000 ;
+    END
+  END ipin_x7y9_1
+  PIN ipin_x8y9_0
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 784.850 3196.000 785.130 3200.000 ;
+    END
+  END ipin_x8y9_0
+  PIN ipin_x8y9_1
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 839.130 3196.000 839.410 3200.000 ;
+    END
+  END ipin_x8y9_1
+  PIN ipin_x9y1_0
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 33.360 2600.000 33.960 ;
+    END
+  END ipin_x9y1_0
+  PIN ipin_x9y1_1
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 100.000 2600.000 100.600 ;
+    END
+  END ipin_x9y1_1
+  PIN ipin_x9y2_0
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 166.640 2600.000 167.240 ;
+    END
+  END ipin_x9y2_0
+  PIN ipin_x9y2_1
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 233.280 2600.000 233.880 ;
+    END
+  END ipin_x9y2_1
+  PIN ipin_x9y3_0
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 299.920 2600.000 300.520 ;
+    END
+  END ipin_x9y3_0
+  PIN ipin_x9y3_1
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 366.560 2600.000 367.160 ;
+    END
+  END ipin_x9y3_1
+  PIN ipin_x9y4_0
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 433.200 2600.000 433.800 ;
+    END
+  END ipin_x9y4_0
+  PIN ipin_x9y4_1
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 499.840 2600.000 500.440 ;
+    END
+  END ipin_x9y4_1
+  PIN ipin_x9y5_0
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 566.480 2600.000 567.080 ;
+    END
+  END ipin_x9y5_0
+  PIN ipin_x9y5_1
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 633.120 2600.000 633.720 ;
+    END
+  END ipin_x9y5_1
+  PIN ipin_x9y6_0
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 699.760 2600.000 700.360 ;
+    END
+  END ipin_x9y6_0
+  PIN ipin_x9y6_1
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 766.400 2600.000 767.000 ;
+    END
+  END ipin_x9y6_1
+  PIN ipin_x9y7_0
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 833.040 2600.000 833.640 ;
+    END
+  END ipin_x9y7_0
+  PIN ipin_x9y7_1
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 899.680 2600.000 900.280 ;
+    END
+  END ipin_x9y7_1
+  PIN ipin_x9y8_0
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 966.320 2600.000 966.920 ;
+    END
+  END ipin_x9y8_0
+  PIN ipin_x9y8_1
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 1032.960 2600.000 1033.560 ;
+    END
+  END ipin_x9y8_1
+  PIN oe_x0y1_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 2166.520 4.000 2167.120 ;
+    END
+  END oe_x0y1_0
+  PIN oe_x0y1_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 2233.160 4.000 2233.760 ;
+    END
+  END oe_x0y1_1
+  PIN oe_x0y2_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 2299.800 4.000 2300.400 ;
+    END
+  END oe_x0y2_0
+  PIN oe_x0y2_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 2366.440 4.000 2367.040 ;
+    END
+  END oe_x0y2_1
+  PIN oe_x0y3_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 2433.080 4.000 2433.680 ;
+    END
+  END oe_x0y3_0
+  PIN oe_x0y3_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 2499.720 4.000 2500.320 ;
+    END
+  END oe_x0y3_1
+  PIN oe_x0y4_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 2566.360 4.000 2566.960 ;
+    END
+  END oe_x0y4_0
+  PIN oe_x0y4_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 2633.000 4.000 2633.600 ;
+    END
+  END oe_x0y4_1
+  PIN oe_x0y5_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 2699.640 4.000 2700.240 ;
+    END
+  END oe_x0y5_0
+  PIN oe_x0y5_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 2766.280 4.000 2766.880 ;
+    END
+  END oe_x0y5_1
+  PIN oe_x0y6_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 2832.920 4.000 2833.520 ;
+    END
+  END oe_x0y6_0
+  PIN oe_x0y6_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 2899.560 4.000 2900.160 ;
+    END
+  END oe_x0y6_1
+  PIN oe_x0y7_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 2966.200 4.000 2966.800 ;
+    END
+  END oe_x0y7_0
+  PIN oe_x0y7_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 3032.840 4.000 3033.440 ;
+    END
+  END oe_x0y7_1
+  PIN oe_x0y8_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 3099.480 4.000 3100.080 ;
+    END
+  END oe_x0y8_0
+  PIN oe_x0y8_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 3166.120 4.000 3166.720 ;
+    END
+  END oe_x0y8_1
+  PIN oe_x1y9_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 1760.050 3196.000 1760.330 3200.000 ;
+    END
+  END oe_x1y9_0
+  PIN oe_x1y9_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 1813.870 3196.000 1814.150 3200.000 ;
+    END
+  END oe_x1y9_1
+  PIN oe_x2y9_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 1868.150 3196.000 1868.430 3200.000 ;
+    END
+  END oe_x2y9_0
+  PIN oe_x2y9_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 1922.430 3196.000 1922.710 3200.000 ;
+    END
+  END oe_x2y9_1
+  PIN oe_x3y9_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 1976.710 3196.000 1976.990 3200.000 ;
+    END
+  END oe_x3y9_0
+  PIN oe_x3y9_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 2030.530 3196.000 2030.810 3200.000 ;
+    END
+  END oe_x3y9_1
+  PIN oe_x4y9_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 2084.810 3196.000 2085.090 3200.000 ;
+    END
+  END oe_x4y9_0
+  PIN oe_x4y9_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 2139.090 3196.000 2139.370 3200.000 ;
+    END
+  END oe_x4y9_1
+  PIN oe_x5y9_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 2193.370 3196.000 2193.650 3200.000 ;
+    END
+  END oe_x5y9_0
+  PIN oe_x5y9_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 2247.190 3196.000 2247.470 3200.000 ;
+    END
+  END oe_x5y9_1
+  PIN oe_x6y9_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 2301.470 3196.000 2301.750 3200.000 ;
+    END
+  END oe_x6y9_0
+  PIN oe_x6y9_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 2355.750 3196.000 2356.030 3200.000 ;
+    END
+  END oe_x6y9_1
+  PIN oe_x7y9_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 2410.030 3196.000 2410.310 3200.000 ;
+    END
+  END oe_x7y9_0
+  PIN oe_x7y9_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 2463.850 3196.000 2464.130 3200.000 ;
+    END
+  END oe_x7y9_1
+  PIN oe_x8y9_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 2518.130 3196.000 2518.410 3200.000 ;
+    END
+  END oe_x8y9_0
+  PIN oe_x8y9_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 2572.410 3196.000 2572.690 3200.000 ;
+    END
+  END oe_x8y9_1
+  PIN oe_x9y1_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 2166.520 2600.000 2167.120 ;
+    END
+  END oe_x9y1_0
+  PIN oe_x9y1_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 2233.160 2600.000 2233.760 ;
+    END
+  END oe_x9y1_1
+  PIN oe_x9y2_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 2299.800 2600.000 2300.400 ;
+    END
+  END oe_x9y2_0
+  PIN oe_x9y2_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 2366.440 2600.000 2367.040 ;
+    END
+  END oe_x9y2_1
+  PIN oe_x9y3_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 2433.080 2600.000 2433.680 ;
+    END
+  END oe_x9y3_0
+  PIN oe_x9y3_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 2499.720 2600.000 2500.320 ;
+    END
+  END oe_x9y3_1
+  PIN oe_x9y4_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 2566.360 2600.000 2566.960 ;
+    END
+  END oe_x9y4_0
+  PIN oe_x9y4_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 2633.000 2600.000 2633.600 ;
+    END
+  END oe_x9y4_1
+  PIN oe_x9y5_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 2699.640 2600.000 2700.240 ;
+    END
+  END oe_x9y5_0
+  PIN oe_x9y5_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 2766.280 2600.000 2766.880 ;
+    END
+  END oe_x9y5_1
+  PIN oe_x9y6_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 2832.920 2600.000 2833.520 ;
+    END
+  END oe_x9y6_0
+  PIN oe_x9y6_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 2899.560 2600.000 2900.160 ;
+    END
+  END oe_x9y6_1
+  PIN oe_x9y7_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 2966.200 2600.000 2966.800 ;
+    END
+  END oe_x9y7_0
+  PIN oe_x9y7_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 3032.840 2600.000 3033.440 ;
+    END
+  END oe_x9y7_1
+  PIN oe_x9y8_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 3099.480 2600.000 3100.080 ;
+    END
+  END oe_x9y8_0
+  PIN oe_x9y8_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 3166.120 2600.000 3166.720 ;
+    END
+  END oe_x9y8_1
+  PIN opin_x0y1_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 1099.600 4.000 1100.200 ;
+    END
+  END opin_x0y1_0
+  PIN opin_x0y1_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 1166.240 4.000 1166.840 ;
+    END
+  END opin_x0y1_1
+  PIN opin_x0y2_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 1232.880 4.000 1233.480 ;
+    END
+  END opin_x0y2_0
+  PIN opin_x0y2_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 1299.520 4.000 1300.120 ;
+    END
+  END opin_x0y2_1
+  PIN opin_x0y3_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 1366.160 4.000 1366.760 ;
+    END
+  END opin_x0y3_0
+  PIN opin_x0y3_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 1432.800 4.000 1433.400 ;
+    END
+  END opin_x0y3_1
+  PIN opin_x0y4_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 1499.440 4.000 1500.040 ;
+    END
+  END opin_x0y4_0
+  PIN opin_x0y4_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 1566.080 4.000 1566.680 ;
+    END
+  END opin_x0y4_1
+  PIN opin_x0y5_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 1633.400 4.000 1634.000 ;
+    END
+  END opin_x0y5_0
+  PIN opin_x0y5_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 1700.040 4.000 1700.640 ;
+    END
+  END opin_x0y5_1
+  PIN opin_x0y6_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 1766.680 4.000 1767.280 ;
+    END
+  END opin_x0y6_0
+  PIN opin_x0y6_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 1833.320 4.000 1833.920 ;
+    END
+  END opin_x0y6_1
+  PIN opin_x0y7_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 1899.960 4.000 1900.560 ;
+    END
+  END opin_x0y7_0
+  PIN opin_x0y7_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 1966.600 4.000 1967.200 ;
+    END
+  END opin_x0y7_1
+  PIN opin_x0y8_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 2033.240 4.000 2033.840 ;
+    END
+  END opin_x0y8_0
+  PIN opin_x0y8_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 0.000 2099.880 4.000 2100.480 ;
+    END
+  END opin_x0y8_1
+  PIN opin_x1y9_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 893.410 3196.000 893.690 3200.000 ;
+    END
+  END opin_x1y9_0
+  PIN opin_x1y9_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 947.230 3196.000 947.510 3200.000 ;
+    END
+  END opin_x1y9_1
+  PIN opin_x2y9_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 1001.510 3196.000 1001.790 3200.000 ;
+    END
+  END opin_x2y9_0
+  PIN opin_x2y9_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 1055.790 3196.000 1056.070 3200.000 ;
+    END
+  END opin_x2y9_1
+  PIN opin_x3y9_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 1110.070 3196.000 1110.350 3200.000 ;
+    END
+  END opin_x3y9_0
+  PIN opin_x3y9_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 1163.890 3196.000 1164.170 3200.000 ;
+    END
+  END opin_x3y9_1
+  PIN opin_x4y9_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 1218.170 3196.000 1218.450 3200.000 ;
+    END
+  END opin_x4y9_0
+  PIN opin_x4y9_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 1272.450 3196.000 1272.730 3200.000 ;
+    END
+  END opin_x4y9_1
+  PIN opin_x5y9_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 1326.730 3196.000 1327.010 3200.000 ;
+    END
+  END opin_x5y9_0
+  PIN opin_x5y9_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 1380.550 3196.000 1380.830 3200.000 ;
+    END
+  END opin_x5y9_1
+  PIN opin_x6y9_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 1434.830 3196.000 1435.110 3200.000 ;
+    END
+  END opin_x6y9_0
+  PIN opin_x6y9_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 1489.110 3196.000 1489.390 3200.000 ;
+    END
+  END opin_x6y9_1
+  PIN opin_x7y9_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 1543.390 3196.000 1543.670 3200.000 ;
+    END
+  END opin_x7y9_0
+  PIN opin_x7y9_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 1597.210 3196.000 1597.490 3200.000 ;
+    END
+  END opin_x7y9_1
+  PIN opin_x8y9_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 1651.490 3196.000 1651.770 3200.000 ;
+    END
+  END opin_x8y9_0
+  PIN opin_x8y9_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 1705.770 3196.000 1706.050 3200.000 ;
+    END
+  END opin_x8y9_1
+  PIN opin_x9y1_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 1099.600 2600.000 1100.200 ;
+    END
+  END opin_x9y1_0
+  PIN opin_x9y1_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 1166.240 2600.000 1166.840 ;
+    END
+  END opin_x9y1_1
+  PIN opin_x9y2_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 1232.880 2600.000 1233.480 ;
+    END
+  END opin_x9y2_0
+  PIN opin_x9y2_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 1299.520 2600.000 1300.120 ;
+    END
+  END opin_x9y2_1
+  PIN opin_x9y3_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 1366.160 2600.000 1366.760 ;
+    END
+  END opin_x9y3_0
+  PIN opin_x9y3_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 1432.800 2600.000 1433.400 ;
+    END
+  END opin_x9y3_1
+  PIN opin_x9y4_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 1499.440 2600.000 1500.040 ;
+    END
+  END opin_x9y4_0
+  PIN opin_x9y4_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 1566.080 2600.000 1566.680 ;
+    END
+  END opin_x9y4_1
+  PIN opin_x9y5_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 1633.400 2600.000 1634.000 ;
+    END
+  END opin_x9y5_0
+  PIN opin_x9y5_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 1700.040 2600.000 1700.640 ;
+    END
+  END opin_x9y5_1
+  PIN opin_x9y6_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 1766.680 2600.000 1767.280 ;
+    END
+  END opin_x9y6_0
+  PIN opin_x9y6_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 1833.320 2600.000 1833.920 ;
+    END
+  END opin_x9y6_1
+  PIN opin_x9y7_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 1899.960 2600.000 1900.560 ;
+    END
+  END opin_x9y7_0
+  PIN opin_x9y7_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 1966.600 2600.000 1967.200 ;
+    END
+  END opin_x9y7_1
+  PIN opin_x9y8_0
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 2033.240 2600.000 2033.840 ;
+    END
+  END opin_x9y8_0
+  PIN opin_x9y8_1
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met3 ;
+        RECT 2596.000 2099.880 2600.000 2100.480 ;
+    END
+  END opin_x9y8_1
+  PIN prog_clk
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 185.470 0.000 185.750 4.000 ;
+    END
+  END prog_clk
+  PIN prog_din
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 556.690 0.000 556.970 4.000 ;
+    END
+  END prog_din
+  PIN prog_done
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 927.910 0.000 928.190 4.000 ;
+    END
+  END prog_done
+  PIN prog_dout
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 1299.590 0.000 1299.870 4.000 ;
+    END
+  END prog_dout
+  PIN prog_rst
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 1670.810 0.000 1671.090 4.000 ;
+    END
+  END prog_rst
+  PIN prog_we
+    DIRECTION INPUT ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 2042.490 0.000 2042.770 4.000 ;
+    END
+  END prog_we
+  PIN prog_we_o
+    DIRECTION OUTPUT TRISTATE ;
+    USE SIGNAL ;
+    PORT
+      LAYER met2 ;
+        RECT 2413.710 0.000 2413.990 4.000 ;
+    END
+  END prog_we_o
+  PIN vccd1
+    DIRECTION INPUT ;
+    USE POWER ;
+    PORT
+      LAYER met4 ;
+        RECT 21.040 10.640 22.640 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 174.640 10.640 176.240 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 328.240 10.640 329.840 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 481.840 10.640 483.440 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 635.440 10.640 637.040 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 789.040 10.640 790.640 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 942.640 10.640 944.240 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 1096.240 10.640 1097.840 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 1249.840 10.640 1251.440 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 1403.440 10.640 1405.040 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 1557.040 10.640 1558.640 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 1710.640 10.640 1712.240 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 1864.240 10.640 1865.840 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 2017.840 10.640 2019.440 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 2171.440 10.640 2173.040 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 2325.040 10.640 2326.640 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 2478.640 10.640 2480.240 3188.080 ;
+    END
+  END vccd1
+  PIN vssd1
+    DIRECTION INPUT ;
+    USE GROUND ;
+    PORT
+      LAYER met4 ;
+        RECT 97.840 10.640 99.440 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 251.440 10.640 253.040 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 405.040 10.640 406.640 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 558.640 10.640 560.240 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 712.240 10.640 713.840 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 865.840 10.640 867.440 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 1019.440 10.640 1021.040 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 1173.040 10.640 1174.640 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 1326.640 10.640 1328.240 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 1480.240 10.640 1481.840 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 1633.840 10.640 1635.440 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 1787.440 10.640 1789.040 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 1941.040 10.640 1942.640 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 2094.640 10.640 2096.240 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 2248.240 10.640 2249.840 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 2401.840 10.640 2403.440 3188.080 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 2555.440 10.640 2557.040 3188.080 ;
+    END
+  END vssd1
+  OBS
+      LAYER li1 ;
+        RECT 5.520 10.795 2594.400 3187.925 ;
+      LAYER met1 ;
+        RECT 5.520 10.640 2597.090 3188.080 ;
+      LAYER met2 ;
+        RECT 6.990 3195.720 26.490 3196.410 ;
+        RECT 27.330 3195.720 80.310 3196.410 ;
+        RECT 81.150 3195.720 134.590 3196.410 ;
+        RECT 135.430 3195.720 188.870 3196.410 ;
+        RECT 189.710 3195.720 243.150 3196.410 ;
+        RECT 243.990 3195.720 296.970 3196.410 ;
+        RECT 297.810 3195.720 351.250 3196.410 ;
+        RECT 352.090 3195.720 405.530 3196.410 ;
+        RECT 406.370 3195.720 459.810 3196.410 ;
+        RECT 460.650 3195.720 513.630 3196.410 ;
+        RECT 514.470 3195.720 567.910 3196.410 ;
+        RECT 568.750 3195.720 622.190 3196.410 ;
+        RECT 623.030 3195.720 676.470 3196.410 ;
+        RECT 677.310 3195.720 730.290 3196.410 ;
+        RECT 731.130 3195.720 784.570 3196.410 ;
+        RECT 785.410 3195.720 838.850 3196.410 ;
+        RECT 839.690 3195.720 893.130 3196.410 ;
+        RECT 893.970 3195.720 946.950 3196.410 ;
+        RECT 947.790 3195.720 1001.230 3196.410 ;
+        RECT 1002.070 3195.720 1055.510 3196.410 ;
+        RECT 1056.350 3195.720 1109.790 3196.410 ;
+        RECT 1110.630 3195.720 1163.610 3196.410 ;
+        RECT 1164.450 3195.720 1217.890 3196.410 ;
+        RECT 1218.730 3195.720 1272.170 3196.410 ;
+        RECT 1273.010 3195.720 1326.450 3196.410 ;
+        RECT 1327.290 3195.720 1380.270 3196.410 ;
+        RECT 1381.110 3195.720 1434.550 3196.410 ;
+        RECT 1435.390 3195.720 1488.830 3196.410 ;
+        RECT 1489.670 3195.720 1543.110 3196.410 ;
+        RECT 1543.950 3195.720 1596.930 3196.410 ;
+        RECT 1597.770 3195.720 1651.210 3196.410 ;
+        RECT 1652.050 3195.720 1705.490 3196.410 ;
+        RECT 1706.330 3195.720 1759.770 3196.410 ;
+        RECT 1760.610 3195.720 1813.590 3196.410 ;
+        RECT 1814.430 3195.720 1867.870 3196.410 ;
+        RECT 1868.710 3195.720 1922.150 3196.410 ;
+        RECT 1922.990 3195.720 1976.430 3196.410 ;
+        RECT 1977.270 3195.720 2030.250 3196.410 ;
+        RECT 2031.090 3195.720 2084.530 3196.410 ;
+        RECT 2085.370 3195.720 2138.810 3196.410 ;
+        RECT 2139.650 3195.720 2193.090 3196.410 ;
+        RECT 2193.930 3195.720 2246.910 3196.410 ;
+        RECT 2247.750 3195.720 2301.190 3196.410 ;
+        RECT 2302.030 3195.720 2355.470 3196.410 ;
+        RECT 2356.310 3195.720 2409.750 3196.410 ;
+        RECT 2410.590 3195.720 2463.570 3196.410 ;
+        RECT 2464.410 3195.720 2517.850 3196.410 ;
+        RECT 2518.690 3195.720 2572.130 3196.410 ;
+        RECT 2572.970 3195.720 2597.060 3196.410 ;
+        RECT 6.990 4.280 2597.060 3195.720 ;
+        RECT 6.990 3.670 185.190 4.280 ;
+        RECT 186.030 3.670 556.410 4.280 ;
+        RECT 557.250 3.670 927.630 4.280 ;
+        RECT 928.470 3.670 1299.310 4.280 ;
+        RECT 1300.150 3.670 1670.530 4.280 ;
+        RECT 1671.370 3.670 2042.210 4.280 ;
+        RECT 2043.050 3.670 2413.430 4.280 ;
+        RECT 2414.270 3.670 2597.060 4.280 ;
+      LAYER met3 ;
+        RECT 4.000 3167.120 2596.000 3188.005 ;
+        RECT 4.400 3165.720 2595.600 3167.120 ;
+        RECT 4.000 3100.480 2596.000 3165.720 ;
+        RECT 4.400 3099.080 2595.600 3100.480 ;
+        RECT 4.000 3033.840 2596.000 3099.080 ;
+        RECT 4.400 3032.440 2595.600 3033.840 ;
+        RECT 4.000 2967.200 2596.000 3032.440 ;
+        RECT 4.400 2965.800 2595.600 2967.200 ;
+        RECT 4.000 2900.560 2596.000 2965.800 ;
+        RECT 4.400 2899.160 2595.600 2900.560 ;
+        RECT 4.000 2833.920 2596.000 2899.160 ;
+        RECT 4.400 2832.520 2595.600 2833.920 ;
+        RECT 4.000 2767.280 2596.000 2832.520 ;
+        RECT 4.400 2765.880 2595.600 2767.280 ;
+        RECT 4.000 2700.640 2596.000 2765.880 ;
+        RECT 4.400 2699.240 2595.600 2700.640 ;
+        RECT 4.000 2634.000 2596.000 2699.240 ;
+        RECT 4.400 2632.600 2595.600 2634.000 ;
+        RECT 4.000 2567.360 2596.000 2632.600 ;
+        RECT 4.400 2565.960 2595.600 2567.360 ;
+        RECT 4.000 2500.720 2596.000 2565.960 ;
+        RECT 4.400 2499.320 2595.600 2500.720 ;
+        RECT 4.000 2434.080 2596.000 2499.320 ;
+        RECT 4.400 2432.680 2595.600 2434.080 ;
+        RECT 4.000 2367.440 2596.000 2432.680 ;
+        RECT 4.400 2366.040 2595.600 2367.440 ;
+        RECT 4.000 2300.800 2596.000 2366.040 ;
+        RECT 4.400 2299.400 2595.600 2300.800 ;
+        RECT 4.000 2234.160 2596.000 2299.400 ;
+        RECT 4.400 2232.760 2595.600 2234.160 ;
+        RECT 4.000 2167.520 2596.000 2232.760 ;
+        RECT 4.400 2166.120 2595.600 2167.520 ;
+        RECT 4.000 2100.880 2596.000 2166.120 ;
+        RECT 4.400 2099.480 2595.600 2100.880 ;
+        RECT 4.000 2034.240 2596.000 2099.480 ;
+        RECT 4.400 2032.840 2595.600 2034.240 ;
+        RECT 4.000 1967.600 2596.000 2032.840 ;
+        RECT 4.400 1966.200 2595.600 1967.600 ;
+        RECT 4.000 1900.960 2596.000 1966.200 ;
+        RECT 4.400 1899.560 2595.600 1900.960 ;
+        RECT 4.000 1834.320 2596.000 1899.560 ;
+        RECT 4.400 1832.920 2595.600 1834.320 ;
+        RECT 4.000 1767.680 2596.000 1832.920 ;
+        RECT 4.400 1766.280 2595.600 1767.680 ;
+        RECT 4.000 1701.040 2596.000 1766.280 ;
+        RECT 4.400 1699.640 2595.600 1701.040 ;
+        RECT 4.000 1634.400 2596.000 1699.640 ;
+        RECT 4.400 1633.000 2595.600 1634.400 ;
+        RECT 4.000 1567.080 2596.000 1633.000 ;
+        RECT 4.400 1565.680 2595.600 1567.080 ;
+        RECT 4.000 1500.440 2596.000 1565.680 ;
+        RECT 4.400 1499.040 2595.600 1500.440 ;
+        RECT 4.000 1433.800 2596.000 1499.040 ;
+        RECT 4.400 1432.400 2595.600 1433.800 ;
+        RECT 4.000 1367.160 2596.000 1432.400 ;
+        RECT 4.400 1365.760 2595.600 1367.160 ;
+        RECT 4.000 1300.520 2596.000 1365.760 ;
+        RECT 4.400 1299.120 2595.600 1300.520 ;
+        RECT 4.000 1233.880 2596.000 1299.120 ;
+        RECT 4.400 1232.480 2595.600 1233.880 ;
+        RECT 4.000 1167.240 2596.000 1232.480 ;
+        RECT 4.400 1165.840 2595.600 1167.240 ;
+        RECT 4.000 1100.600 2596.000 1165.840 ;
+        RECT 4.400 1099.200 2595.600 1100.600 ;
+        RECT 4.000 1033.960 2596.000 1099.200 ;
+        RECT 4.400 1032.560 2595.600 1033.960 ;
+        RECT 4.000 967.320 2596.000 1032.560 ;
+        RECT 4.400 965.920 2595.600 967.320 ;
+        RECT 4.000 900.680 2596.000 965.920 ;
+        RECT 4.400 899.280 2595.600 900.680 ;
+        RECT 4.000 834.040 2596.000 899.280 ;
+        RECT 4.400 832.640 2595.600 834.040 ;
+        RECT 4.000 767.400 2596.000 832.640 ;
+        RECT 4.400 766.000 2595.600 767.400 ;
+        RECT 4.000 700.760 2596.000 766.000 ;
+        RECT 4.400 699.360 2595.600 700.760 ;
+        RECT 4.000 634.120 2596.000 699.360 ;
+        RECT 4.400 632.720 2595.600 634.120 ;
+        RECT 4.000 567.480 2596.000 632.720 ;
+        RECT 4.400 566.080 2595.600 567.480 ;
+        RECT 4.000 500.840 2596.000 566.080 ;
+        RECT 4.400 499.440 2595.600 500.840 ;
+        RECT 4.000 434.200 2596.000 499.440 ;
+        RECT 4.400 432.800 2595.600 434.200 ;
+        RECT 4.000 367.560 2596.000 432.800 ;
+        RECT 4.400 366.160 2595.600 367.560 ;
+        RECT 4.000 300.920 2596.000 366.160 ;
+        RECT 4.400 299.520 2595.600 300.920 ;
+        RECT 4.000 234.280 2596.000 299.520 ;
+        RECT 4.400 232.880 2595.600 234.280 ;
+        RECT 4.000 167.640 2596.000 232.880 ;
+        RECT 4.400 166.240 2595.600 167.640 ;
+        RECT 4.000 101.000 2596.000 166.240 ;
+        RECT 4.400 99.600 2595.600 101.000 ;
+        RECT 4.000 34.360 2596.000 99.600 ;
+        RECT 4.400 32.960 2595.600 34.360 ;
+        RECT 4.000 10.715 2596.000 32.960 ;
+      LAYER met4 ;
+        RECT 40.775 102.175 97.440 3128.505 ;
+        RECT 99.840 102.175 174.240 3128.505 ;
+        RECT 176.640 102.175 251.040 3128.505 ;
+        RECT 253.440 102.175 327.840 3128.505 ;
+        RECT 330.240 102.175 404.640 3128.505 ;
+        RECT 407.040 102.175 481.440 3128.505 ;
+        RECT 483.840 102.175 558.240 3128.505 ;
+        RECT 560.640 102.175 635.040 3128.505 ;
+        RECT 637.440 102.175 711.840 3128.505 ;
+        RECT 714.240 102.175 788.640 3128.505 ;
+        RECT 791.040 102.175 865.440 3128.505 ;
+        RECT 867.840 102.175 942.240 3128.505 ;
+        RECT 944.640 102.175 1019.040 3128.505 ;
+        RECT 1021.440 102.175 1095.840 3128.505 ;
+        RECT 1098.240 102.175 1172.640 3128.505 ;
+        RECT 1175.040 102.175 1249.440 3128.505 ;
+        RECT 1251.840 102.175 1326.240 3128.505 ;
+        RECT 1328.640 102.175 1403.040 3128.505 ;
+        RECT 1405.440 102.175 1479.840 3128.505 ;
+        RECT 1482.240 102.175 1556.640 3128.505 ;
+        RECT 1559.040 102.175 1633.440 3128.505 ;
+        RECT 1635.840 102.175 1710.240 3128.505 ;
+        RECT 1712.640 102.175 1787.040 3128.505 ;
+        RECT 1789.440 102.175 1863.840 3128.505 ;
+        RECT 1866.240 102.175 1940.640 3128.505 ;
+        RECT 1943.040 102.175 2017.440 3128.505 ;
+        RECT 2019.840 102.175 2094.240 3128.505 ;
+        RECT 2096.640 102.175 2171.040 3128.505 ;
+        RECT 2173.440 102.175 2247.840 3128.505 ;
+        RECT 2250.240 102.175 2324.640 3128.505 ;
+        RECT 2327.040 102.175 2401.440 3128.505 ;
+        RECT 2403.840 102.175 2478.240 3128.505 ;
+        RECT 2480.640 102.175 2481.865 3128.505 ;
+  END
+END top
+END LIBRARY
+
diff --git a/openlane/prga/hackflow.sh b/openlane/prga/hackflow.sh
new file mode 100644
index 0000000..5437637
--- /dev/null
+++ b/openlane/prga/hackflow.sh
@@ -0,0 +1,68 @@
+if [ "`uname -n`" != "eldin" ] || [ "$USER" != "angl" ]; then
+    echo "This script only works for angl@eldin"
+    exit
+fi
+
+function cleanup {
+    pushd caravel
+    git checkout openlane/Makefile
+    popd
+    popd
+}
+
+trap cleanup EXIT
+
+# 1. cd to project root
+pushd ${TAPEOUT_ROOT}/caravel
+
+# 2. hack caravel/openlane/Makefile
+sed -i "/^OPENLANE_BASIC_COMMAND/c\OPENLANE_BASIC_COMMAND = \"cd \$(PWD)/../openlane && flow.tcl -design ./\$* -save_path .. -save -tag \$* -overwrite -to cts\"" \
+    caravel/openlane/Makefile
+
+# 3. run make
+make prga
+if [[ -z "$?" ]]; then
+    echo "Make to cts failed"
+    exit
+fi
+
+# 4. run hacked openroad to route
+pushd openlane
+OPENROAD_BIN=/home/angl/local/bin/openroad \
+    CARAVEL_ROOT=../caravel \
+    ../../openlane/flow.tcl \
+    -design prga \
+    -tag prga \
+    -save \
+    -save_path .. \
+    -from routing \
+    -to routing
+# somehow we need to run it twice.. I guess this is due to some configuration
+# file overriding rules
+OPENROAD_BIN=/home/angl/local/bin/openroad \
+    CARAVEL_ROOT=../caravel \
+    ../../openlane/flow.tcl \
+    -design prga \
+    -tag prga \
+    -save \
+    -save_path .. \
+    -from routing \
+    -to routing
+popd
+
+exit
+
+# 5. hack Makefile again
+sed -i "/^OPENLANE_BASIC_COMMAND/c\OPENLANE_BASIC_COMMAND = \"cd \$(PWD)/../openlane && flow.tcl -design ./\$* -save_path .. -save -tag \$* -from eco\"" \
+    caravel/openlane/Makefile
+
+# 6. run make
+make prga
+# similarly, we need it run it twice
+make prga
+if [[ -z "$?" ]]; then
+    echo "Make from eco failed"
+fi
+
+# 7. revert our hack of the Makefile
+exit
diff --git a/openlane/tile_clb/config.tcl b/openlane/tile_clb/config.tcl
index 759434a..14d91d5 100755
--- a/openlane/tile_clb/config.tcl
+++ b/openlane/tile_clb/config.tcl
@@ -65,6 +65,6 @@
 set ::env(VDD_NETS) [list {vccd1}]
 set ::env(GND_NETS) [list {vssd1}]
 
-set ::env(DIODE_INSERTION_STRATEGY) 4
+set ::env(DIODE_INSERTION_STRATEGY) 3
 # If you're going to use multiple power domains, then disable cvc run.
 set ::env(RUN_CVC) 0