DRC clean cells
diff --git a/cells/cell/XOR2X1.cell b/cells/cell/XOR2X1.cell
new file mode 100644
index 0000000..376f17a
--- /dev/null
+++ b/cells/cell/XOR2X1.cell
@@ -0,0 +1,16 @@
+.AUTOGENERATED by spice2cell script from /usr/share/qflow/tech/osu050/osu050_stdcells.sp
+.inputs B A
+.outputs Y
+.ORDER "MOSFET Gate Drain Source"
+pmos A 1 vdd
+pmos 2 3 vdd
+pmos A Y 3
+pmos 1 4 Y
+pmos B 4 vdd
+pmos B 2 vdd
+nmos A 1 gnd
+nmos 2 5 gnd
+nmos 1 Y 5
+nmos A 6 Y
+nmos B 6 gnd
+nmos B 2 gnd
diff --git a/cells/gds/AND2X1.gds b/cells/gds/AND2X1.gds
index 331c560..da085b5 100644
--- a/cells/gds/AND2X1.gds
+++ b/cells/gds/AND2X1.gds
Binary files differ
diff --git a/cells/gds/AND2X2.gds b/cells/gds/AND2X2.gds
index c3b11a6..2fba077 100644
--- a/cells/gds/AND2X2.gds
+++ b/cells/gds/AND2X2.gds
Binary files differ
diff --git a/cells/gds/AOI21X1.gds b/cells/gds/AOI21X1.gds
index 85d4e1a..0996218 100644
--- a/cells/gds/AOI21X1.gds
+++ b/cells/gds/AOI21X1.gds
Binary files differ
diff --git a/cells/gds/AOI22X1.gds b/cells/gds/AOI22X1.gds
index 5314805..ae0f79b 100644
--- a/cells/gds/AOI22X1.gds
+++ b/cells/gds/AOI22X1.gds
Binary files differ
diff --git a/cells/gds/BUFX2.gds b/cells/gds/BUFX2.gds
index fecec14..c361f96 100644
--- a/cells/gds/BUFX2.gds
+++ b/cells/gds/BUFX2.gds
Binary files differ
diff --git a/cells/gds/BUFX4.gds b/cells/gds/BUFX4.gds
index c9d3a5d..3422111 100644
--- a/cells/gds/BUFX4.gds
+++ b/cells/gds/BUFX4.gds
Binary files differ
diff --git a/cells/gds/CLKBUF1.gds b/cells/gds/CLKBUF1.gds
index edce858..a1d9ec8 100644
--- a/cells/gds/CLKBUF1.gds
+++ b/cells/gds/CLKBUF1.gds
Binary files differ
diff --git a/cells/gds/INV.gds b/cells/gds/INV.gds
index ffb3dbb..6c8f47e 100644
--- a/cells/gds/INV.gds
+++ b/cells/gds/INV.gds
Binary files differ
diff --git a/cells/gds/INVX1.gds b/cells/gds/INVX1.gds
index fdb96c7..7f4c05e 100644
--- a/cells/gds/INVX1.gds
+++ b/cells/gds/INVX1.gds
Binary files differ
diff --git a/cells/gds/INVX2.gds b/cells/gds/INVX2.gds
index 52f8507..e9c68cb 100644
--- a/cells/gds/INVX2.gds
+++ b/cells/gds/INVX2.gds
Binary files differ
diff --git a/cells/gds/INVX4.gds b/cells/gds/INVX4.gds
index f50ed54..3984220 100644
--- a/cells/gds/INVX4.gds
+++ b/cells/gds/INVX4.gds
Binary files differ
diff --git a/cells/gds/INVX8.gds b/cells/gds/INVX8.gds
index 8740f08..9e8573e 100644
--- a/cells/gds/INVX8.gds
+++ b/cells/gds/INVX8.gds
Binary files differ
diff --git a/cells/gds/MUX2X1.gds b/cells/gds/MUX2X1.gds
index 57e127f..5d09108 100644
--- a/cells/gds/MUX2X1.gds
+++ b/cells/gds/MUX2X1.gds
Binary files differ
diff --git a/cells/gds/NAND2X1.gds b/cells/gds/NAND2X1.gds
index 0deb1c4..64636ee 100644
--- a/cells/gds/NAND2X1.gds
+++ b/cells/gds/NAND2X1.gds
Binary files differ
diff --git a/cells/gds/NAND3X1.gds b/cells/gds/NAND3X1.gds
index a09976d..dc5304c 100644
--- a/cells/gds/NAND3X1.gds
+++ b/cells/gds/NAND3X1.gds
Binary files differ
diff --git a/cells/gds/OR2X1.gds b/cells/gds/OR2X1.gds
index f401110..8bc6138 100644
--- a/cells/gds/OR2X1.gds
+++ b/cells/gds/OR2X1.gds
Binary files differ
diff --git a/cells/gds/OR2X2.gds b/cells/gds/OR2X2.gds
index cea0735..fcedfff 100644
--- a/cells/gds/OR2X2.gds
+++ b/cells/gds/OR2X2.gds
Binary files differ
diff --git a/cells/gds/XNOR2X1.gds b/cells/gds/XNOR2X1.gds
index 8d0a02d..a14c620 100644
--- a/cells/gds/XNOR2X1.gds
+++ b/cells/gds/XNOR2X1.gds
Binary files differ
diff --git a/cells/gds/XOR2X1.gds b/cells/gds/XOR2X1.gds
new file mode 100644
index 0000000..989b227
--- /dev/null
+++ b/cells/gds/XOR2X1.gds
Binary files differ
diff --git a/cells/lef/AND2X1.lef b/cells/lef/AND2X1.lef
index dd3148f..f3d2e14 100644
--- a/cells/lef/AND2X1.lef
+++ b/cells/lef/AND2X1.lef
@@ -70,6 +70,17 @@
         RECT 4.660 0.440 4.950 0.730 ;
     END
   END Y
+  PIN B
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 2.740 1.780 3.030 2.070 ;
+        RECT 2.810 1.140 2.950 1.780 ;
+        RECT 2.740 0.850 3.030 1.140 ;
+    END
+  END B
   PIN A
     DIRECTION INOUT ;
     USE SIGNAL ;
@@ -81,17 +92,6 @@
         RECT 1.300 0.850 1.590 1.140 ;
     END
   END A
-  PIN B
-    DIRECTION INOUT ;
-    USE SIGNAL ;
-    SHAPE ABUTMENT ;
-    PORT
-      LAYER met1 ;
-        RECT 2.740 1.780 3.030 2.070 ;
-        RECT 2.810 1.540 2.950 1.780 ;
-        RECT 2.740 1.250 3.030 1.540 ;
-    END
-  END B
   OBS
       LAYER li1 ;
         RECT 1.760 2.430 2.090 2.510 ;
@@ -114,7 +114,6 @@
         RECT 4.160 1.840 4.240 2.010 ;
         RECT 4.410 1.840 4.490 2.010 ;
         RECT 4.160 1.760 4.490 1.840 ;
-        RECT 2.800 1.160 2.970 1.310 ;
         RECT 1.280 1.080 1.610 1.160 ;
         RECT 1.280 0.920 1.360 1.080 ;
         RECT 1.300 0.910 1.360 0.920 ;
@@ -139,27 +138,27 @@
         RECT 4.640 0.420 4.970 0.500 ;
       LAYER met1 ;
         RECT 1.780 2.430 2.070 2.490 ;
-        RECT 1.780 2.260 1.840 2.430 ;
-        RECT 2.010 2.260 2.070 2.430 ;
+        RECT 1.780 2.410 1.840 2.430 ;
+        RECT 0.890 2.270 1.840 2.410 ;
+        RECT 0.890 0.730 1.030 2.270 ;
+        RECT 1.780 2.260 1.840 2.270 ;
+        RECT 2.010 2.410 2.070 2.430 ;
+        RECT 2.010 2.270 4.390 2.410 ;
+        RECT 2.010 2.260 2.070 2.270 ;
         RECT 1.780 2.200 2.070 2.260 ;
-        RECT 1.850 1.060 1.990 2.200 ;
+        RECT 4.250 2.070 4.390 2.270 ;
         RECT 4.180 2.010 4.470 2.070 ;
         RECT 4.180 1.840 4.240 2.010 ;
         RECT 4.410 1.840 4.470 2.010 ;
         RECT 4.180 1.780 4.470 1.840 ;
         RECT 4.250 1.140 4.390 1.780 ;
         RECT 4.180 1.080 4.470 1.140 ;
-        RECT 4.180 1.060 4.240 1.080 ;
-        RECT 1.850 0.920 4.240 1.060 ;
-        RECT 0.820 0.670 1.110 0.730 ;
-        RECT 0.820 0.500 0.880 0.670 ;
-        RECT 1.050 0.660 1.110 0.670 ;
-        RECT 1.850 0.660 1.990 0.920 ;
-        RECT 4.180 0.910 4.240 0.920 ;
+        RECT 4.180 0.910 4.240 1.080 ;
         RECT 4.410 0.910 4.470 1.080 ;
         RECT 4.180 0.850 4.470 0.910 ;
-        RECT 1.050 0.520 1.990 0.660 ;
-        RECT 1.050 0.500 1.110 0.520 ;
+        RECT 0.820 0.670 1.110 0.730 ;
+        RECT 0.820 0.500 0.880 0.670 ;
+        RECT 1.050 0.500 1.110 0.670 ;
         RECT 0.820 0.440 1.110 0.500 ;
   END
 END AND2X1
diff --git a/cells/lef/AND2X1.lef.beforemagic b/cells/lef/AND2X1.lef.beforemagic
index 3a69996..f36124c 100644
--- a/cells/lef/AND2X1.lef.beforemagic
+++ b/cells/lef/AND2X1.lef.beforemagic
@@ -44,6 +44,19 @@
     END
   END Y
 
+  PIN B
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
+        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
+        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+    END
+  END B
+
   PIN A
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -57,200 +70,188 @@
     END
   END A
 
-  PIN B
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
-        RECT 2.81000000 1.54000000 2.95000000 1.78000000 ;
-        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-    END
-  END B
-
 
   OBS
     LAYER locali ;
-      RECT ( 0 3.42 ) ( 5.76 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
-      RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
-      RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
-      RECT ( 5.61 3.25 ) ( 5.76 3.42 ) ;
-      RECT ( 0 3.09 ) ( 5.76 3.25 ) ;
-      RECT ( 0.56 2.99 ) ( 0.89 3.09 ) ;
-      RECT ( 0.56 2.82 ) ( 0.64 2.99 ) ;
-      RECT ( 0.81 2.82 ) ( 0.89 2.99 ) ;
-      RECT ( 0.56 2.74 ) ( 0.89 2.82 ) ;
-      RECT ( 3.2 2.99 ) ( 3.53 3.09 ) ;
-      RECT ( 3.2 2.82 ) ( 3.28 2.99 ) ;
-      RECT ( 3.45 2.82 ) ( 3.53 2.99 ) ;
-      RECT ( 3.2 2.74 ) ( 3.53 2.82 ) ;
-      RECT ( 1.76 2.43 ) ( 2.09 2.51 ) ;
-      RECT ( 1.76 2.26 ) ( 1.84 2.43 ) ;
-      RECT ( 2.01 2.26 ) ( 2.09 2.43 ) ;
-      RECT ( 4.64 2.43 ) ( 4.97 2.51 ) ;
-      RECT ( 4.64 2.26 ) ( 4.72 2.43 ) ;
-      RECT ( 4.89 2.26 ) ( 4.97 2.43 ) ;
-      RECT ( 1.78 2.18 ) ( 2.09 2.26 ) ;
-      RECT ( 4.66 2.18 ) ( 4.97 2.26 ) ;
-      RECT ( 1.28 2.01 ) ( 1.61 2.09 ) ;
-      RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
-      RECT ( 1.28 1.76 ) ( 1.61 1.84 ) ;
-      RECT ( 2.72 2.01 ) ( 3.05 2.09 ) ;
-      RECT ( 2.72 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.05 2.01 ) ;
-      RECT ( 2.72 1.76 ) ( 3.05 1.84 ) ;
-      RECT ( 4.16 2.01 ) ( 4.49 2.09 ) ;
-      RECT ( 4.16 1.84 ) ( 4.24 2.01 ) ;
-      RECT ( 4.41 1.84 ) ( 4.49 2.01 ) ;
-      RECT ( 4.16 1.76 ) ( 4.49 1.84 ) ;
-      RECT ( 2.8 1.16 ) ( 2.97 1.31 ) ;
-      RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
-      RECT ( 1.28 0.92 ) ( 1.36 1.08 ) ;
-      RECT ( 1.3 0.91 ) ( 1.36 0.92 ) ;
-      RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
-      RECT ( 1.3 0.83 ) ( 1.61 0.91 ) ;
-      RECT ( 2.72 1.08 ) ( 3.05 1.16 ) ;
-      RECT ( 2.72 0.91 ) ( 2.8 1.08 ) ;
-      RECT ( 2.97 0.91 ) ( 3.05 1.08 ) ;
-      RECT ( 2.72 0.83 ) ( 3.05 0.91 ) ;
-      RECT ( 4.16 1.08 ) ( 4.49 1.16 ) ;
-      RECT ( 4.16 0.91 ) ( 4.24 1.08 ) ;
-      RECT ( 4.41 0.91 ) ( 4.49 1.08 ) ;
-      RECT ( 4.16 0.83 ) ( 4.49 0.91 ) ;
-      RECT ( 0.8 0.67 ) ( 1.13 0.75 ) ;
-      RECT ( 0.8 0.5 ) ( 0.88 0.67 ) ;
-      RECT ( 1.05 0.5 ) ( 1.13 0.67 ) ;
-      RECT ( 4.66 0.67 ) ( 4.97 0.75 ) ;
-      RECT ( 4.66 0.66 ) ( 4.72 0.67 ) ;
-      RECT ( 0.8 0.42 ) ( 1.13 0.5 ) ;
-      RECT ( 3.2 0.51 ) ( 3.53 0.59 ) ;
-      RECT ( 3.2 0.34 ) ( 3.28 0.51 ) ;
-      RECT ( 3.45 0.34 ) ( 3.53 0.51 ) ;
-      RECT ( 4.64 0.5 ) ( 4.72 0.66 ) ;
-      RECT ( 4.89 0.5 ) ( 4.97 0.67 ) ;
-      RECT ( 4.64 0.42 ) ( 4.97 0.5 ) ;
-      RECT ( 3.2 0.24 ) ( 3.53 0.34 ) ;
-      RECT ( 0 0.09 ) ( 5.76 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
-      RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
-      RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
-      RECT ( 5.61 -0.09 ) ( 5.76 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 5.76 -0.09 ) ;
+      RECT ( 0 3.415 ) ( 5.76 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.475 3.415 ) ;
+      RECT ( 4.645 3.245 ) ( 4.955 3.415 ) ;
+      RECT ( 5.125 3.245 ) ( 5.435 3.415 ) ;
+      RECT ( 5.605 3.245 ) ( 5.76 3.415 ) ;
+      RECT ( 0 3.09 ) ( 5.76 3.245 ) ;
+      RECT ( 0.555 2.99 ) ( 0.885 3.09 ) ;
+      RECT ( 0.555 2.82 ) ( 0.635 2.99 ) ;
+      RECT ( 0.805 2.82 ) ( 0.885 2.99 ) ;
+      RECT ( 0.555 2.74 ) ( 0.885 2.82 ) ;
+      RECT ( 3.195 2.99 ) ( 3.525 3.09 ) ;
+      RECT ( 3.195 2.82 ) ( 3.275 2.99 ) ;
+      RECT ( 3.445 2.82 ) ( 3.525 2.99 ) ;
+      RECT ( 3.195 2.74 ) ( 3.525 2.82 ) ;
+      RECT ( 1.755 2.425 ) ( 2.085 2.505 ) ;
+      RECT ( 1.755 2.26 ) ( 1.835 2.425 ) ;
+      RECT ( 1.775 2.255 ) ( 1.835 2.26 ) ;
+      RECT ( 2.005 2.255 ) ( 2.085 2.425 ) ;
+      RECT ( 4.635 2.425 ) ( 4.965 2.505 ) ;
+      RECT ( 4.635 2.26 ) ( 4.715 2.425 ) ;
+      RECT ( 1.775 2.175 ) ( 2.085 2.255 ) ;
+      RECT ( 4.655 2.255 ) ( 4.715 2.26 ) ;
+      RECT ( 4.885 2.255 ) ( 4.965 2.425 ) ;
+      RECT ( 4.655 2.175 ) ( 4.965 2.255 ) ;
+      RECT ( 1.275 2.01 ) ( 1.605 2.09 ) ;
+      RECT ( 1.275 1.84 ) ( 1.355 2.01 ) ;
+      RECT ( 1.525 1.84 ) ( 1.605 2.01 ) ;
+      RECT ( 1.275 1.76 ) ( 1.605 1.84 ) ;
+      RECT ( 2.715 2.01 ) ( 3.045 2.09 ) ;
+      RECT ( 2.715 1.84 ) ( 2.795 2.01 ) ;
+      RECT ( 2.965 1.84 ) ( 3.045 2.01 ) ;
+      RECT ( 2.715 1.76 ) ( 3.045 1.84 ) ;
+      RECT ( 4.155 2.01 ) ( 4.485 2.09 ) ;
+      RECT ( 4.155 1.84 ) ( 4.235 2.01 ) ;
+      RECT ( 4.405 1.84 ) ( 4.485 2.01 ) ;
+      RECT ( 4.155 1.76 ) ( 4.485 1.84 ) ;
+      RECT ( 1.275 1.075 ) ( 1.605 1.155 ) ;
+      RECT ( 1.275 0.92 ) ( 1.355 1.075 ) ;
+      RECT ( 1.295 0.905 ) ( 1.355 0.92 ) ;
+      RECT ( 1.525 0.905 ) ( 1.605 1.075 ) ;
+      RECT ( 1.295 0.825 ) ( 1.605 0.905 ) ;
+      RECT ( 2.715 1.075 ) ( 3.045 1.155 ) ;
+      RECT ( 2.715 0.905 ) ( 2.795 1.075 ) ;
+      RECT ( 2.965 0.905 ) ( 3.045 1.075 ) ;
+      RECT ( 2.715 0.825 ) ( 3.045 0.905 ) ;
+      RECT ( 4.155 1.075 ) ( 4.485 1.155 ) ;
+      RECT ( 4.155 0.905 ) ( 4.235 1.075 ) ;
+      RECT ( 4.405 0.905 ) ( 4.485 1.075 ) ;
+      RECT ( 4.155 0.825 ) ( 4.485 0.905 ) ;
+      RECT ( 0.795 0.67 ) ( 1.125 0.75 ) ;
+      RECT ( 0.795 0.5 ) ( 0.875 0.67 ) ;
+      RECT ( 1.045 0.5 ) ( 1.125 0.67 ) ;
+      RECT ( 4.655 0.67 ) ( 4.965 0.75 ) ;
+      RECT ( 4.655 0.655 ) ( 4.715 0.67 ) ;
+      RECT ( 0.795 0.42 ) ( 1.125 0.5 ) ;
+      RECT ( 3.195 0.51 ) ( 3.525 0.59 ) ;
+      RECT ( 3.195 0.34 ) ( 3.275 0.51 ) ;
+      RECT ( 3.445 0.34 ) ( 3.525 0.51 ) ;
+      RECT ( 4.635 0.5 ) ( 4.715 0.655 ) ;
+      RECT ( 4.885 0.5 ) ( 4.965 0.67 ) ;
+      RECT ( 4.635 0.42 ) ( 4.965 0.5 ) ;
+      RECT ( 3.195 0.24 ) ( 3.525 0.34 ) ;
+      RECT ( 0 0.085 ) ( 5.76 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.475 0.085 ) ;
+      RECT ( 4.645 -0.085 ) ( 4.955 0.085 ) ;
+      RECT ( 5.125 -0.085 ) ( 5.435 0.085 ) ;
+      RECT ( 5.605 -0.085 ) ( 5.76 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 5.76 -0.085 ) ;
     LAYER metal1 ;
-      RECT ( 0 3.42 ) ( 5.76 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
-      RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
-      RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
-      RECT ( 5.61 3.25 ) ( 5.76 3.42 ) ;
-      RECT ( 0 3.09 ) ( 5.76 3.25 ) ;
-      RECT ( 0.58 2.99 ) ( 0.87 3.09 ) ;
-      RECT ( 0.58 2.82 ) ( 0.64 2.99 ) ;
-      RECT ( 0.81 2.82 ) ( 0.87 2.99 ) ;
-      RECT ( 0.58 2.76 ) ( 0.87 2.82 ) ;
-      RECT ( 3.22 2.99 ) ( 3.51 3.09 ) ;
-      RECT ( 3.22 2.82 ) ( 3.28 2.99 ) ;
-      RECT ( 3.45 2.82 ) ( 3.51 2.99 ) ;
-      RECT ( 3.22 2.76 ) ( 3.51 2.82 ) ;
-      RECT ( 1.78 2.43 ) ( 2.07 2.49 ) ;
-      RECT ( 1.78 2.26 ) ( 1.84 2.43 ) ;
-      RECT ( 2.01 2.26 ) ( 2.07 2.43 ) ;
-      RECT ( 1.78 2.2 ) ( 2.07 2.26 ) ;
-      RECT ( 4.66 2.43 ) ( 4.95 2.49 ) ;
-      RECT ( 4.66 2.26 ) ( 4.72 2.43 ) ;
-      RECT ( 4.89 2.26 ) ( 4.95 2.43 ) ;
-      RECT ( 4.66 2.2 ) ( 4.95 2.26 ) ;
-      RECT ( 1.3 2.01 ) ( 1.59 2.07 ) ;
-      RECT ( 1.3 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.59 2.01 ) ;
-      RECT ( 1.3 1.78 ) ( 1.59 1.84 ) ;
-      RECT ( 1.37 1.14 ) ( 1.51 1.78 ) ;
-      RECT ( 1.3 1.08 ) ( 1.59 1.14 ) ;
-      RECT ( 1.3 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 1.59 1.08 ) ;
-      RECT ( 1.3 0.85 ) ( 1.59 0.91 ) ;
-      RECT ( 1.85 1.06 ) ( 1.99 2.2 ) ;
-      RECT ( 2.74 2.01 ) ( 3.03 2.07 ) ;
-      RECT ( 2.74 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.03 2.01 ) ;
-      RECT ( 2.74 1.78 ) ( 3.03 1.84 ) ;
-      RECT ( 4.18 2.01 ) ( 4.47 2.07 ) ;
-      RECT ( 4.18 1.84 ) ( 4.24 2.01 ) ;
-      RECT ( 4.41 1.84 ) ( 4.47 2.01 ) ;
-      RECT ( 4.18 1.78 ) ( 4.47 1.84 ) ;
-      RECT ( 2.81 1.54 ) ( 2.95 1.78 ) ;
-      RECT ( 2.74 1.48 ) ( 3.03 1.54 ) ;
-      RECT ( 2.74 1.31 ) ( 2.8 1.48 ) ;
-      RECT ( 2.97 1.31 ) ( 3.03 1.48 ) ;
-      RECT ( 2.74 1.25 ) ( 3.03 1.31 ) ;
-      RECT ( 4.25 1.14 ) ( 4.39 1.78 ) ;
-      RECT ( 4.18 1.08 ) ( 4.47 1.14 ) ;
-      RECT ( 4.18 1.06 ) ( 4.24 1.08 ) ;
-      RECT ( 1.85 0.92 ) ( 4.24 1.06 ) ;
-      RECT ( 0.82 0.67 ) ( 1.11 0.73 ) ;
-      RECT ( 0.82 0.5 ) ( 0.88 0.67 ) ;
-      RECT ( 1.05 0.66 ) ( 1.11 0.67 ) ;
-      RECT ( 1.85 0.66 ) ( 1.99 0.92 ) ;
-      RECT ( 4.18 0.91 ) ( 4.24 0.92 ) ;
-      RECT ( 4.41 0.91 ) ( 4.47 1.08 ) ;
-      RECT ( 4.18 0.85 ) ( 4.47 0.91 ) ;
-      RECT ( 4.73 0.73 ) ( 4.87 2.2 ) ;
-      RECT ( 1.05 0.52 ) ( 1.99 0.66 ) ;
-      RECT ( 4.66 0.67 ) ( 4.95 0.73 ) ;
-      RECT ( 1.05 0.5 ) ( 1.11 0.52 ) ;
-      RECT ( 0.82 0.44 ) ( 1.11 0.5 ) ;
-      RECT ( 3.22 0.51 ) ( 3.51 0.57 ) ;
-      RECT ( 3.22 0.34 ) ( 3.28 0.51 ) ;
-      RECT ( 3.45 0.34 ) ( 3.51 0.51 ) ;
-      RECT ( 4.66 0.5 ) ( 4.72 0.67 ) ;
-      RECT ( 4.89 0.5 ) ( 4.95 0.67 ) ;
-      RECT ( 4.66 0.44 ) ( 4.95 0.5 ) ;
-      RECT ( 3.22 0.24 ) ( 3.51 0.34 ) ;
-      RECT ( 0 0.09 ) ( 5.76 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
-      RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
-      RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
-      RECT ( 5.61 -0.09 ) ( 5.76 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 5.76 -0.09 ) ;
+      RECT ( 0 3.415 ) ( 5.76 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.475 3.415 ) ;
+      RECT ( 4.645 3.245 ) ( 4.955 3.415 ) ;
+      RECT ( 5.125 3.245 ) ( 5.435 3.415 ) ;
+      RECT ( 5.605 3.245 ) ( 5.76 3.415 ) ;
+      RECT ( 0 3.09 ) ( 5.76 3.245 ) ;
+      RECT ( 0.575 2.99 ) ( 0.865 3.09 ) ;
+      RECT ( 0.575 2.82 ) ( 0.635 2.99 ) ;
+      RECT ( 0.805 2.82 ) ( 0.865 2.99 ) ;
+      RECT ( 0.575 2.76 ) ( 0.865 2.82 ) ;
+      RECT ( 3.215 2.99 ) ( 3.505 3.09 ) ;
+      RECT ( 3.215 2.82 ) ( 3.275 2.99 ) ;
+      RECT ( 3.445 2.82 ) ( 3.505 2.99 ) ;
+      RECT ( 3.215 2.76 ) ( 3.505 2.82 ) ;
+      RECT ( 1.775 2.425 ) ( 2.065 2.485 ) ;
+      RECT ( 1.775 2.41 ) ( 1.835 2.425 ) ;
+      RECT ( 0.89 2.27 ) ( 1.835 2.41 ) ;
+      RECT ( 0.89 0.73 ) ( 1.03 2.27 ) ;
+      RECT ( 1.775 2.255 ) ( 1.835 2.27 ) ;
+      RECT ( 2.005 2.41 ) ( 2.065 2.425 ) ;
+      RECT ( 4.655 2.425 ) ( 4.945 2.485 ) ;
+      RECT ( 2.005 2.27 ) ( 4.39 2.41 ) ;
+      RECT ( 2.005 2.255 ) ( 2.065 2.27 ) ;
+      RECT ( 1.775 2.195 ) ( 2.065 2.255 ) ;
+      RECT ( 4.25 2.07 ) ( 4.39 2.27 ) ;
+      RECT ( 4.655 2.255 ) ( 4.715 2.425 ) ;
+      RECT ( 4.885 2.255 ) ( 4.945 2.425 ) ;
+      RECT ( 4.655 2.195 ) ( 4.945 2.255 ) ;
+      RECT ( 1.295 2.01 ) ( 1.585 2.07 ) ;
+      RECT ( 1.295 1.84 ) ( 1.355 2.01 ) ;
+      RECT ( 1.525 1.84 ) ( 1.585 2.01 ) ;
+      RECT ( 1.295 1.78 ) ( 1.585 1.84 ) ;
+      RECT ( 2.735 2.01 ) ( 3.025 2.07 ) ;
+      RECT ( 2.735 1.84 ) ( 2.795 2.01 ) ;
+      RECT ( 2.965 1.84 ) ( 3.025 2.01 ) ;
+      RECT ( 2.735 1.78 ) ( 3.025 1.84 ) ;
+      RECT ( 4.175 2.01 ) ( 4.465 2.07 ) ;
+      RECT ( 4.175 1.84 ) ( 4.235 2.01 ) ;
+      RECT ( 4.405 1.84 ) ( 4.465 2.01 ) ;
+      RECT ( 4.175 1.78 ) ( 4.465 1.84 ) ;
+      RECT ( 1.37 1.135 ) ( 1.51 1.78 ) ;
+      RECT ( 2.81 1.135 ) ( 2.95 1.78 ) ;
+      RECT ( 4.25 1.135 ) ( 4.39 1.78 ) ;
+      RECT ( 1.295 1.075 ) ( 1.585 1.135 ) ;
+      RECT ( 1.295 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.905 ) ( 1.585 1.075 ) ;
+      RECT ( 1.295 0.845 ) ( 1.585 0.905 ) ;
+      RECT ( 2.735 1.075 ) ( 3.025 1.135 ) ;
+      RECT ( 2.735 0.905 ) ( 2.795 1.075 ) ;
+      RECT ( 2.965 0.905 ) ( 3.025 1.075 ) ;
+      RECT ( 2.735 0.845 ) ( 3.025 0.905 ) ;
+      RECT ( 4.175 1.075 ) ( 4.465 1.135 ) ;
+      RECT ( 4.175 0.905 ) ( 4.235 1.075 ) ;
+      RECT ( 4.405 0.905 ) ( 4.465 1.075 ) ;
+      RECT ( 4.175 0.845 ) ( 4.465 0.905 ) ;
+      RECT ( 4.73 0.73 ) ( 4.87 2.195 ) ;
+      RECT ( 0.815 0.67 ) ( 1.105 0.73 ) ;
+      RECT ( 0.815 0.5 ) ( 0.875 0.67 ) ;
+      RECT ( 1.045 0.5 ) ( 1.105 0.67 ) ;
+      RECT ( 4.655 0.67 ) ( 4.945 0.73 ) ;
+      RECT ( 0.815 0.44 ) ( 1.105 0.5 ) ;
+      RECT ( 3.215 0.51 ) ( 3.505 0.57 ) ;
+      RECT ( 3.215 0.34 ) ( 3.275 0.51 ) ;
+      RECT ( 3.445 0.34 ) ( 3.505 0.51 ) ;
+      RECT ( 4.655 0.5 ) ( 4.715 0.67 ) ;
+      RECT ( 4.885 0.5 ) ( 4.945 0.67 ) ;
+      RECT ( 4.655 0.44 ) ( 4.945 0.5 ) ;
+      RECT ( 3.215 0.24 ) ( 3.505 0.34 ) ;
+      RECT ( 0 0.085 ) ( 5.76 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.475 0.085 ) ;
+      RECT ( 4.645 -0.085 ) ( 4.955 0.085 ) ;
+      RECT ( 5.125 -0.085 ) ( 5.435 0.085 ) ;
+      RECT ( 5.605 -0.085 ) ( 5.76 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 5.76 -0.085 ) ;
 
   end
 END AND2X1
diff --git a/cells/lef/AND2X1.lef.temp b/cells/lef/AND2X1.lef.temp
index cc6f3dd..8d61f30 100644
--- a/cells/lef/AND2X1.lef.temp
+++ b/cells/lef/AND2X1.lef.temp
@@ -44,6 +44,19 @@
     END
   END Y
 
+  PIN B
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
+        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
+        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+    END
+  END B
+
   PIN A
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -57,17 +70,4 @@
     END
   END A
 
-  PIN B
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
-        RECT 2.81000000 1.54000000 2.95000000 1.78000000 ;
-        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-    END
-  END B
-
 END AND2X1
diff --git a/cells/lef/AND2X2.lef b/cells/lef/AND2X2.lef
index ec94f87..7405ee1 100644
--- a/cells/lef/AND2X2.lef
+++ b/cells/lef/AND2X2.lef
@@ -70,17 +70,6 @@
         RECT 4.660 0.440 4.950 0.730 ;
     END
   END Y
-  PIN B
-    DIRECTION INOUT ;
-    USE SIGNAL ;
-    SHAPE ABUTMENT ;
-    PORT
-      LAYER met1 ;
-        RECT 2.740 1.780 3.030 2.070 ;
-        RECT 2.810 1.140 2.950 1.780 ;
-        RECT 2.740 0.850 3.030 1.140 ;
-    END
-  END B
   PIN A
     DIRECTION INOUT ;
     USE SIGNAL ;
@@ -92,6 +81,15 @@
         RECT 1.300 0.850 1.590 1.140 ;
     END
   END A
+  PIN B
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 2.740 1.780 3.030 2.070 ;
+    END
+  END B
   OBS
       LAYER li1 ;
         RECT 1.760 2.430 2.090 2.510 ;
@@ -114,6 +112,7 @@
         RECT 4.160 1.840 4.240 2.010 ;
         RECT 4.410 1.840 4.490 2.010 ;
         RECT 4.160 1.760 4.490 1.840 ;
+        RECT 2.800 1.160 2.970 1.760 ;
         RECT 1.280 1.080 1.610 1.160 ;
         RECT 1.280 0.920 1.360 1.080 ;
         RECT 1.300 0.910 1.360 0.920 ;
@@ -138,27 +137,27 @@
         RECT 4.640 0.420 4.970 0.500 ;
       LAYER met1 ;
         RECT 1.780 2.430 2.070 2.490 ;
-        RECT 1.780 2.410 1.840 2.430 ;
-        RECT 0.890 2.270 1.840 2.410 ;
-        RECT 0.890 0.730 1.030 2.270 ;
-        RECT 1.780 2.260 1.840 2.270 ;
-        RECT 2.010 2.410 2.070 2.430 ;
-        RECT 2.010 2.270 4.390 2.410 ;
-        RECT 2.010 2.260 2.070 2.270 ;
+        RECT 1.780 2.260 1.840 2.430 ;
+        RECT 2.010 2.260 2.070 2.430 ;
         RECT 1.780 2.200 2.070 2.260 ;
-        RECT 4.250 2.070 4.390 2.270 ;
+        RECT 1.850 1.060 1.990 2.200 ;
         RECT 4.180 2.010 4.470 2.070 ;
         RECT 4.180 1.840 4.240 2.010 ;
         RECT 4.410 1.840 4.470 2.010 ;
         RECT 4.180 1.780 4.470 1.840 ;
         RECT 4.250 1.140 4.390 1.780 ;
         RECT 4.180 1.080 4.470 1.140 ;
-        RECT 4.180 0.910 4.240 1.080 ;
-        RECT 4.410 0.910 4.470 1.080 ;
-        RECT 4.180 0.850 4.470 0.910 ;
+        RECT 4.180 1.060 4.240 1.080 ;
+        RECT 1.850 0.920 4.240 1.060 ;
         RECT 0.820 0.670 1.110 0.730 ;
         RECT 0.820 0.500 0.880 0.670 ;
-        RECT 1.050 0.500 1.110 0.670 ;
+        RECT 1.050 0.660 1.110 0.670 ;
+        RECT 1.850 0.660 1.990 0.920 ;
+        RECT 4.180 0.910 4.240 0.920 ;
+        RECT 4.410 0.910 4.470 1.080 ;
+        RECT 4.180 0.850 4.470 0.910 ;
+        RECT 1.050 0.520 1.990 0.660 ;
+        RECT 1.050 0.500 1.110 0.520 ;
         RECT 0.820 0.440 1.110 0.500 ;
   END
 END AND2X2
diff --git a/cells/lef/AND2X2.lef.beforemagic b/cells/lef/AND2X2.lef.beforemagic
index 708d5bb..17e060e 100644
--- a/cells/lef/AND2X2.lef.beforemagic
+++ b/cells/lef/AND2X2.lef.beforemagic
@@ -44,19 +44,6 @@
     END
   END Y
 
-  PIN B
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
-        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
-        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-    END
-  END B
-
   PIN A
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -70,186 +57,195 @@
     END
   END A
 
+  PIN B
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+    END
+  END B
+
 
   OBS
     LAYER locali ;
-      RECT ( 0 3.42 ) ( 5.76 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
-      RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
-      RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
-      RECT ( 5.61 3.25 ) ( 5.76 3.42 ) ;
-      RECT ( 0 3.09 ) ( 5.76 3.25 ) ;
-      RECT ( 0.56 2.99 ) ( 0.89 3.09 ) ;
-      RECT ( 0.56 2.82 ) ( 0.64 2.99 ) ;
-      RECT ( 0.81 2.82 ) ( 0.89 2.99 ) ;
-      RECT ( 0.56 2.74 ) ( 0.89 2.82 ) ;
-      RECT ( 3.2 2.99 ) ( 3.53 3.09 ) ;
-      RECT ( 3.2 2.82 ) ( 3.28 2.99 ) ;
-      RECT ( 3.45 2.82 ) ( 3.53 2.99 ) ;
-      RECT ( 3.2 2.74 ) ( 3.53 2.82 ) ;
-      RECT ( 1.76 2.43 ) ( 2.09 2.51 ) ;
-      RECT ( 1.76 2.26 ) ( 1.84 2.43 ) ;
-      RECT ( 2.01 2.26 ) ( 2.09 2.43 ) ;
-      RECT ( 4.64 2.43 ) ( 4.97 2.51 ) ;
-      RECT ( 4.64 2.26 ) ( 4.72 2.43 ) ;
-      RECT ( 4.89 2.26 ) ( 4.97 2.43 ) ;
-      RECT ( 1.78 2.18 ) ( 2.09 2.26 ) ;
-      RECT ( 4.66 2.18 ) ( 4.97 2.26 ) ;
-      RECT ( 1.28 2.01 ) ( 1.61 2.09 ) ;
-      RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
-      RECT ( 1.28 1.76 ) ( 1.61 1.84 ) ;
-      RECT ( 2.72 2.01 ) ( 3.05 2.09 ) ;
-      RECT ( 2.72 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.05 2.01 ) ;
-      RECT ( 2.72 1.76 ) ( 3.05 1.84 ) ;
-      RECT ( 4.16 2.01 ) ( 4.49 2.09 ) ;
-      RECT ( 4.16 1.84 ) ( 4.24 2.01 ) ;
-      RECT ( 4.41 1.84 ) ( 4.49 2.01 ) ;
-      RECT ( 4.16 1.76 ) ( 4.49 1.84 ) ;
-      RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
-      RECT ( 1.28 0.92 ) ( 1.36 1.08 ) ;
-      RECT ( 1.3 0.91 ) ( 1.36 0.92 ) ;
-      RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
-      RECT ( 1.3 0.83 ) ( 1.61 0.91 ) ;
-      RECT ( 2.72 1.08 ) ( 3.05 1.16 ) ;
-      RECT ( 2.72 0.91 ) ( 2.8 1.08 ) ;
-      RECT ( 2.97 0.91 ) ( 3.05 1.08 ) ;
-      RECT ( 2.72 0.83 ) ( 3.05 0.91 ) ;
-      RECT ( 4.16 1.08 ) ( 4.49 1.16 ) ;
-      RECT ( 4.16 0.91 ) ( 4.24 1.08 ) ;
-      RECT ( 4.41 0.91 ) ( 4.49 1.08 ) ;
-      RECT ( 4.16 0.83 ) ( 4.49 0.91 ) ;
-      RECT ( 0.8 0.67 ) ( 1.13 0.75 ) ;
-      RECT ( 0.8 0.5 ) ( 0.88 0.67 ) ;
-      RECT ( 1.05 0.5 ) ( 1.13 0.67 ) ;
-      RECT ( 4.66 0.67 ) ( 4.97 0.75 ) ;
-      RECT ( 4.66 0.66 ) ( 4.72 0.67 ) ;
-      RECT ( 0.8 0.42 ) ( 1.13 0.5 ) ;
-      RECT ( 3.2 0.51 ) ( 3.53 0.59 ) ;
-      RECT ( 3.2 0.34 ) ( 3.28 0.51 ) ;
-      RECT ( 3.45 0.34 ) ( 3.53 0.51 ) ;
-      RECT ( 4.64 0.5 ) ( 4.72 0.66 ) ;
-      RECT ( 4.89 0.5 ) ( 4.97 0.67 ) ;
-      RECT ( 4.64 0.42 ) ( 4.97 0.5 ) ;
-      RECT ( 3.2 0.24 ) ( 3.53 0.34 ) ;
-      RECT ( 0 0.09 ) ( 5.76 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
-      RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
-      RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
-      RECT ( 5.61 -0.09 ) ( 5.76 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 5.76 -0.09 ) ;
+      RECT ( 0 3.415 ) ( 5.76 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.475 3.415 ) ;
+      RECT ( 4.645 3.245 ) ( 4.955 3.415 ) ;
+      RECT ( 5.125 3.245 ) ( 5.435 3.415 ) ;
+      RECT ( 5.605 3.245 ) ( 5.76 3.415 ) ;
+      RECT ( 0 3.09 ) ( 5.76 3.245 ) ;
+      RECT ( 0.555 2.99 ) ( 0.885 3.09 ) ;
+      RECT ( 0.555 2.82 ) ( 0.635 2.99 ) ;
+      RECT ( 0.805 2.82 ) ( 0.885 2.99 ) ;
+      RECT ( 0.555 2.74 ) ( 0.885 2.82 ) ;
+      RECT ( 3.195 2.99 ) ( 3.525 3.09 ) ;
+      RECT ( 3.195 2.82 ) ( 3.275 2.99 ) ;
+      RECT ( 3.445 2.82 ) ( 3.525 2.99 ) ;
+      RECT ( 3.195 2.74 ) ( 3.525 2.82 ) ;
+      RECT ( 1.755 2.425 ) ( 2.085 2.505 ) ;
+      RECT ( 1.755 2.26 ) ( 1.835 2.425 ) ;
+      RECT ( 1.775 2.255 ) ( 1.835 2.26 ) ;
+      RECT ( 2.005 2.255 ) ( 2.085 2.425 ) ;
+      RECT ( 4.635 2.425 ) ( 4.965 2.505 ) ;
+      RECT ( 4.635 2.26 ) ( 4.715 2.425 ) ;
+      RECT ( 1.775 2.175 ) ( 2.085 2.255 ) ;
+      RECT ( 4.655 2.255 ) ( 4.715 2.26 ) ;
+      RECT ( 4.885 2.255 ) ( 4.965 2.425 ) ;
+      RECT ( 4.655 2.175 ) ( 4.965 2.255 ) ;
+      RECT ( 1.275 2.01 ) ( 1.605 2.09 ) ;
+      RECT ( 1.275 1.84 ) ( 1.355 2.01 ) ;
+      RECT ( 1.525 1.84 ) ( 1.605 2.01 ) ;
+      RECT ( 1.275 1.76 ) ( 1.605 1.84 ) ;
+      RECT ( 2.715 2.01 ) ( 3.045 2.09 ) ;
+      RECT ( 2.715 1.84 ) ( 2.795 2.01 ) ;
+      RECT ( 2.965 1.84 ) ( 3.045 2.01 ) ;
+      RECT ( 2.715 1.76 ) ( 3.045 1.84 ) ;
+      RECT ( 4.155 2.01 ) ( 4.485 2.09 ) ;
+      RECT ( 4.155 1.84 ) ( 4.235 2.01 ) ;
+      RECT ( 4.405 1.84 ) ( 4.485 2.01 ) ;
+      RECT ( 4.155 1.76 ) ( 4.485 1.84 ) ;
+      RECT ( 2.795 1.155 ) ( 2.965 1.76 ) ;
+      RECT ( 1.275 1.075 ) ( 1.605 1.155 ) ;
+      RECT ( 1.275 0.92 ) ( 1.355 1.075 ) ;
+      RECT ( 1.295 0.905 ) ( 1.355 0.92 ) ;
+      RECT ( 1.525 0.905 ) ( 1.605 1.075 ) ;
+      RECT ( 1.295 0.825 ) ( 1.605 0.905 ) ;
+      RECT ( 2.715 1.075 ) ( 3.045 1.155 ) ;
+      RECT ( 2.715 0.905 ) ( 2.795 1.075 ) ;
+      RECT ( 2.965 0.905 ) ( 3.045 1.075 ) ;
+      RECT ( 2.715 0.825 ) ( 3.045 0.905 ) ;
+      RECT ( 4.155 1.075 ) ( 4.485 1.155 ) ;
+      RECT ( 4.155 0.905 ) ( 4.235 1.075 ) ;
+      RECT ( 4.405 0.905 ) ( 4.485 1.075 ) ;
+      RECT ( 4.155 0.825 ) ( 4.485 0.905 ) ;
+      RECT ( 0.795 0.67 ) ( 1.125 0.75 ) ;
+      RECT ( 0.795 0.5 ) ( 0.875 0.67 ) ;
+      RECT ( 1.045 0.5 ) ( 1.125 0.67 ) ;
+      RECT ( 4.655 0.67 ) ( 4.965 0.75 ) ;
+      RECT ( 4.655 0.655 ) ( 4.715 0.67 ) ;
+      RECT ( 0.795 0.42 ) ( 1.125 0.5 ) ;
+      RECT ( 3.195 0.51 ) ( 3.525 0.59 ) ;
+      RECT ( 3.195 0.34 ) ( 3.275 0.51 ) ;
+      RECT ( 3.445 0.34 ) ( 3.525 0.51 ) ;
+      RECT ( 4.635 0.5 ) ( 4.715 0.655 ) ;
+      RECT ( 4.885 0.5 ) ( 4.965 0.67 ) ;
+      RECT ( 4.635 0.42 ) ( 4.965 0.5 ) ;
+      RECT ( 3.195 0.24 ) ( 3.525 0.34 ) ;
+      RECT ( 0 0.085 ) ( 5.76 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.475 0.085 ) ;
+      RECT ( 4.645 -0.085 ) ( 4.955 0.085 ) ;
+      RECT ( 5.125 -0.085 ) ( 5.435 0.085 ) ;
+      RECT ( 5.605 -0.085 ) ( 5.76 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 5.76 -0.085 ) ;
     LAYER metal1 ;
-      RECT ( 0 3.42 ) ( 5.76 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
-      RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
-      RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
-      RECT ( 5.61 3.25 ) ( 5.76 3.42 ) ;
-      RECT ( 0 3.09 ) ( 5.76 3.25 ) ;
-      RECT ( 0.58 2.99 ) ( 0.87 3.09 ) ;
-      RECT ( 0.58 2.82 ) ( 0.64 2.99 ) ;
-      RECT ( 0.81 2.82 ) ( 0.87 2.99 ) ;
-      RECT ( 0.58 2.76 ) ( 0.87 2.82 ) ;
-      RECT ( 3.22 2.99 ) ( 3.51 3.09 ) ;
-      RECT ( 3.22 2.82 ) ( 3.28 2.99 ) ;
-      RECT ( 3.45 2.82 ) ( 3.51 2.99 ) ;
-      RECT ( 3.22 2.76 ) ( 3.51 2.82 ) ;
-      RECT ( 1.78 2.43 ) ( 2.07 2.49 ) ;
-      RECT ( 1.78 2.41 ) ( 1.84 2.43 ) ;
-      RECT ( 0.89 2.27 ) ( 1.84 2.41 ) ;
-      RECT ( 0.89 0.73 ) ( 1.03 2.27 ) ;
-      RECT ( 1.78 2.26 ) ( 1.84 2.27 ) ;
-      RECT ( 2.01 2.41 ) ( 2.07 2.43 ) ;
-      RECT ( 4.66 2.43 ) ( 4.95 2.49 ) ;
-      RECT ( 2.01 2.27 ) ( 4.39 2.41 ) ;
-      RECT ( 2.01 2.26 ) ( 2.07 2.27 ) ;
-      RECT ( 1.78 2.2 ) ( 2.07 2.26 ) ;
-      RECT ( 4.25 2.07 ) ( 4.39 2.27 ) ;
-      RECT ( 4.66 2.26 ) ( 4.72 2.43 ) ;
-      RECT ( 4.89 2.26 ) ( 4.95 2.43 ) ;
-      RECT ( 4.66 2.2 ) ( 4.95 2.26 ) ;
-      RECT ( 1.3 2.01 ) ( 1.59 2.07 ) ;
-      RECT ( 1.3 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.59 2.01 ) ;
-      RECT ( 1.3 1.78 ) ( 1.59 1.84 ) ;
-      RECT ( 2.74 2.01 ) ( 3.03 2.07 ) ;
-      RECT ( 2.74 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.03 2.01 ) ;
-      RECT ( 2.74 1.78 ) ( 3.03 1.84 ) ;
-      RECT ( 4.18 2.01 ) ( 4.47 2.07 ) ;
-      RECT ( 4.18 1.84 ) ( 4.24 2.01 ) ;
-      RECT ( 4.41 1.84 ) ( 4.47 2.01 ) ;
-      RECT ( 4.18 1.78 ) ( 4.47 1.84 ) ;
-      RECT ( 1.37 1.14 ) ( 1.51 1.78 ) ;
-      RECT ( 2.81 1.14 ) ( 2.95 1.78 ) ;
-      RECT ( 4.25 1.14 ) ( 4.39 1.78 ) ;
-      RECT ( 1.3 1.08 ) ( 1.59 1.14 ) ;
-      RECT ( 1.3 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 1.59 1.08 ) ;
-      RECT ( 1.3 0.85 ) ( 1.59 0.91 ) ;
-      RECT ( 2.74 1.08 ) ( 3.03 1.14 ) ;
-      RECT ( 2.74 0.91 ) ( 2.8 1.08 ) ;
-      RECT ( 2.97 0.91 ) ( 3.03 1.08 ) ;
-      RECT ( 2.74 0.85 ) ( 3.03 0.91 ) ;
-      RECT ( 4.18 1.08 ) ( 4.47 1.14 ) ;
-      RECT ( 4.18 0.91 ) ( 4.24 1.08 ) ;
-      RECT ( 4.41 0.91 ) ( 4.47 1.08 ) ;
-      RECT ( 4.18 0.85 ) ( 4.47 0.91 ) ;
-      RECT ( 4.73 0.73 ) ( 4.87 2.2 ) ;
-      RECT ( 0.82 0.67 ) ( 1.11 0.73 ) ;
-      RECT ( 0.82 0.5 ) ( 0.88 0.67 ) ;
-      RECT ( 1.05 0.5 ) ( 1.11 0.67 ) ;
-      RECT ( 4.66 0.67 ) ( 4.95 0.73 ) ;
-      RECT ( 0.82 0.44 ) ( 1.11 0.5 ) ;
-      RECT ( 3.22 0.51 ) ( 3.51 0.57 ) ;
-      RECT ( 3.22 0.34 ) ( 3.28 0.51 ) ;
-      RECT ( 3.45 0.34 ) ( 3.51 0.51 ) ;
-      RECT ( 4.66 0.5 ) ( 4.72 0.67 ) ;
-      RECT ( 4.89 0.5 ) ( 4.95 0.67 ) ;
-      RECT ( 4.66 0.44 ) ( 4.95 0.5 ) ;
-      RECT ( 3.22 0.24 ) ( 3.51 0.34 ) ;
-      RECT ( 0 0.09 ) ( 5.76 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
-      RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
-      RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
-      RECT ( 5.61 -0.09 ) ( 5.76 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 5.76 -0.09 ) ;
+      RECT ( 0 3.415 ) ( 5.76 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.475 3.415 ) ;
+      RECT ( 4.645 3.245 ) ( 4.955 3.415 ) ;
+      RECT ( 5.125 3.245 ) ( 5.435 3.415 ) ;
+      RECT ( 5.605 3.245 ) ( 5.76 3.415 ) ;
+      RECT ( 0 3.09 ) ( 5.76 3.245 ) ;
+      RECT ( 0.575 2.99 ) ( 0.865 3.09 ) ;
+      RECT ( 0.575 2.82 ) ( 0.635 2.99 ) ;
+      RECT ( 0.805 2.82 ) ( 0.865 2.99 ) ;
+      RECT ( 0.575 2.76 ) ( 0.865 2.82 ) ;
+      RECT ( 3.215 2.99 ) ( 3.505 3.09 ) ;
+      RECT ( 3.215 2.82 ) ( 3.275 2.99 ) ;
+      RECT ( 3.445 2.82 ) ( 3.505 2.99 ) ;
+      RECT ( 3.215 2.76 ) ( 3.505 2.82 ) ;
+      RECT ( 1.775 2.425 ) ( 2.065 2.485 ) ;
+      RECT ( 1.775 2.255 ) ( 1.835 2.425 ) ;
+      RECT ( 2.005 2.255 ) ( 2.065 2.425 ) ;
+      RECT ( 1.775 2.195 ) ( 2.065 2.255 ) ;
+      RECT ( 4.655 2.425 ) ( 4.945 2.485 ) ;
+      RECT ( 4.655 2.255 ) ( 4.715 2.425 ) ;
+      RECT ( 4.885 2.255 ) ( 4.945 2.425 ) ;
+      RECT ( 4.655 2.195 ) ( 4.945 2.255 ) ;
+      RECT ( 1.295 2.01 ) ( 1.585 2.07 ) ;
+      RECT ( 1.295 1.84 ) ( 1.355 2.01 ) ;
+      RECT ( 1.525 1.84 ) ( 1.585 2.01 ) ;
+      RECT ( 1.295 1.78 ) ( 1.585 1.84 ) ;
+      RECT ( 1.37 1.135 ) ( 1.51 1.78 ) ;
+      RECT ( 1.295 1.075 ) ( 1.585 1.135 ) ;
+      RECT ( 1.295 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.905 ) ( 1.585 1.075 ) ;
+      RECT ( 1.295 0.845 ) ( 1.585 0.905 ) ;
+      RECT ( 1.85 1.06 ) ( 1.99 2.195 ) ;
+      RECT ( 2.735 2.01 ) ( 3.025 2.07 ) ;
+      RECT ( 2.735 1.84 ) ( 2.795 2.01 ) ;
+      RECT ( 2.965 1.84 ) ( 3.025 2.01 ) ;
+      RECT ( 2.735 1.78 ) ( 3.025 1.84 ) ;
+      RECT ( 4.175 2.01 ) ( 4.465 2.07 ) ;
+      RECT ( 4.175 1.84 ) ( 4.235 2.01 ) ;
+      RECT ( 4.405 1.84 ) ( 4.465 2.01 ) ;
+      RECT ( 4.175 1.78 ) ( 4.465 1.84 ) ;
+      RECT ( 4.25 1.135 ) ( 4.39 1.78 ) ;
+      RECT ( 4.175 1.075 ) ( 4.465 1.135 ) ;
+      RECT ( 4.175 1.06 ) ( 4.235 1.075 ) ;
+      RECT ( 1.85 0.92 ) ( 4.235 1.06 ) ;
+      RECT ( 0.815 0.67 ) ( 1.105 0.73 ) ;
+      RECT ( 0.815 0.5 ) ( 0.875 0.67 ) ;
+      RECT ( 1.045 0.655 ) ( 1.105 0.67 ) ;
+      RECT ( 1.85 0.655 ) ( 1.99 0.92 ) ;
+      RECT ( 4.175 0.905 ) ( 4.235 0.92 ) ;
+      RECT ( 4.405 0.905 ) ( 4.465 1.075 ) ;
+      RECT ( 4.175 0.845 ) ( 4.465 0.905 ) ;
+      RECT ( 4.73 0.73 ) ( 4.87 2.195 ) ;
+      RECT ( 1.045 0.515 ) ( 1.99 0.655 ) ;
+      RECT ( 4.655 0.67 ) ( 4.945 0.73 ) ;
+      RECT ( 1.045 0.5 ) ( 1.105 0.515 ) ;
+      RECT ( 0.815 0.44 ) ( 1.105 0.5 ) ;
+      RECT ( 3.215 0.51 ) ( 3.505 0.57 ) ;
+      RECT ( 3.215 0.34 ) ( 3.275 0.51 ) ;
+      RECT ( 3.445 0.34 ) ( 3.505 0.51 ) ;
+      RECT ( 4.655 0.5 ) ( 4.715 0.67 ) ;
+      RECT ( 4.885 0.5 ) ( 4.945 0.67 ) ;
+      RECT ( 4.655 0.44 ) ( 4.945 0.5 ) ;
+      RECT ( 3.215 0.24 ) ( 3.505 0.34 ) ;
+      RECT ( 0 0.085 ) ( 5.76 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.475 0.085 ) ;
+      RECT ( 4.645 -0.085 ) ( 4.955 0.085 ) ;
+      RECT ( 5.125 -0.085 ) ( 5.435 0.085 ) ;
+      RECT ( 5.605 -0.085 ) ( 5.76 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 5.76 -0.085 ) ;
 
   end
 END AND2X2
diff --git a/cells/lef/AND2X2.lef.temp b/cells/lef/AND2X2.lef.temp
index 8cdf445..efd3ff5 100644
--- a/cells/lef/AND2X2.lef.temp
+++ b/cells/lef/AND2X2.lef.temp
@@ -44,19 +44,6 @@
     END
   END Y
 
-  PIN B
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
-        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
-        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-    END
-  END B
-
   PIN A
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -70,4 +57,15 @@
     END
   END A
 
+  PIN B
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+    END
+  END B
+
 END AND2X2
diff --git a/cells/lef/AOI21X1.lef b/cells/lef/AOI21X1.lef
index e0ee984..6b9c0c2 100644
--- a/cells/lef/AOI21X1.lef
+++ b/cells/lef/AOI21X1.lef
@@ -62,6 +62,17 @@
         RECT 4.660 0.440 4.950 0.520 ;
     END
   END Y
+  PIN A
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 2.740 1.780 3.030 2.070 ;
+        RECT 2.810 1.140 2.950 1.780 ;
+        RECT 2.740 0.850 3.030 1.140 ;
+    END
+  END A
   PIN C
     DIRECTION INOUT ;
     USE SIGNAL ;
@@ -84,17 +95,6 @@
         RECT 4.180 0.850 4.470 1.140 ;
     END
   END B
-  PIN A
-    DIRECTION INOUT ;
-    USE SIGNAL ;
-    SHAPE ABUTMENT ;
-    PORT
-      LAYER met1 ;
-        RECT 2.740 1.780 3.030 2.070 ;
-        RECT 2.810 1.140 2.950 1.780 ;
-        RECT 2.740 0.850 3.030 1.140 ;
-    END
-  END A
   OBS
       LAYER li1 ;
         RECT 0.560 2.430 0.890 2.510 ;
diff --git a/cells/lef/AOI21X1.lef.beforemagic b/cells/lef/AOI21X1.lef.beforemagic
index f5be2e5..eeff8b3 100644
--- a/cells/lef/AOI21X1.lef.beforemagic
+++ b/cells/lef/AOI21X1.lef.beforemagic
@@ -48,6 +48,19 @@
     END
   END Y
 
+  PIN A
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
+        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
+        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+    END
+  END A
+
   PIN C
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -74,194 +87,183 @@
     END
   END B
 
-  PIN A
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
-        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
-        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-    END
-  END A
-
 
   OBS
     LAYER locali ;
-      RECT ( 0 3.42 ) ( 5.76 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
-      RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
-      RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
-      RECT ( 5.61 3.25 ) ( 5.76 3.42 ) ;
-      RECT ( 0 3.09 ) ( 5.76 3.25 ) ;
-      RECT ( 3.2 2.99 ) ( 3.53 3.09 ) ;
-      RECT ( 3.2 2.82 ) ( 3.28 2.99 ) ;
-      RECT ( 3.45 2.82 ) ( 3.53 2.99 ) ;
-      RECT ( 3.2 2.74 ) ( 3.53 2.82 ) ;
-      RECT ( 0.56 2.43 ) ( 0.89 2.51 ) ;
-      RECT ( 0.56 2.26 ) ( 0.64 2.43 ) ;
-      RECT ( 0.81 2.26 ) ( 0.89 2.43 ) ;
-      RECT ( 0.56 2.18 ) ( 0.89 2.26 ) ;
-      RECT ( 2.24 2.43 ) ( 2.57 2.51 ) ;
-      RECT ( 2.24 2.26 ) ( 2.32 2.43 ) ;
-      RECT ( 2.49 2.26 ) ( 2.57 2.43 ) ;
-      RECT ( 4.64 2.43 ) ( 4.97 2.51 ) ;
-      RECT ( 4.64 2.26 ) ( 4.72 2.43 ) ;
-      RECT ( 4.89 2.26 ) ( 4.97 2.43 ) ;
-      RECT ( 2.24 2.18 ) ( 2.55 2.26 ) ;
-      RECT ( 4.66 2.18 ) ( 4.97 2.26 ) ;
-      RECT ( 1.28 2.01 ) ( 1.61 2.09 ) ;
-      RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
-      RECT ( 1.28 1.76 ) ( 1.61 1.84 ) ;
-      RECT ( 2.72 2.01 ) ( 3.05 2.09 ) ;
-      RECT ( 2.72 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.05 2.01 ) ;
-      RECT ( 2.72 1.76 ) ( 3.05 1.84 ) ;
-      RECT ( 4.16 2.01 ) ( 4.49 2.09 ) ;
-      RECT ( 4.16 1.84 ) ( 4.24 2.01 ) ;
-      RECT ( 4.41 1.84 ) ( 4.49 2.01 ) ;
-      RECT ( 4.16 1.76 ) ( 4.49 1.84 ) ;
-      RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
-      RECT ( 1.28 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
-      RECT ( 1.28 0.83 ) ( 1.61 0.91 ) ;
-      RECT ( 2.72 1.08 ) ( 3.05 1.16 ) ;
-      RECT ( 2.72 0.91 ) ( 2.8 1.08 ) ;
-      RECT ( 2.97 0.91 ) ( 3.05 1.08 ) ;
-      RECT ( 2.72 0.83 ) ( 3.05 0.91 ) ;
-      RECT ( 4.16 1.08 ) ( 4.49 1.16 ) ;
-      RECT ( 4.16 0.91 ) ( 4.24 1.08 ) ;
-      RECT ( 4.41 0.92 ) ( 4.49 1.08 ) ;
-      RECT ( 4.41 0.91 ) ( 4.47 0.92 ) ;
-      RECT ( 4.16 0.83 ) ( 4.47 0.91 ) ;
-      RECT ( 0.56 0.67 ) ( 0.89 0.75 ) ;
-      RECT ( 0.56 0.5 ) ( 0.64 0.67 ) ;
-      RECT ( 0.81 0.5 ) ( 0.89 0.67 ) ;
-      RECT ( 4.64 0.67 ) ( 4.97 0.75 ) ;
-      RECT ( 0.56 0.42 ) ( 0.89 0.5 ) ;
-      RECT ( 1.76 0.51 ) ( 2.09 0.59 ) ;
-      RECT ( 1.76 0.34 ) ( 1.84 0.51 ) ;
-      RECT ( 2.01 0.34 ) ( 2.09 0.51 ) ;
-      RECT ( 4.64 0.5 ) ( 4.72 0.67 ) ;
-      RECT ( 4.89 0.5 ) ( 4.97 0.67 ) ;
-      RECT ( 4.64 0.42 ) ( 4.97 0.5 ) ;
-      RECT ( 1.76 0.24 ) ( 2.09 0.34 ) ;
-      RECT ( 0 0.09 ) ( 5.76 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
-      RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
-      RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
-      RECT ( 5.61 -0.09 ) ( 5.76 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 5.76 -0.09 ) ;
+      RECT ( 0 3.415 ) ( 5.76 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.475 3.415 ) ;
+      RECT ( 4.645 3.245 ) ( 4.955 3.415 ) ;
+      RECT ( 5.125 3.245 ) ( 5.435 3.415 ) ;
+      RECT ( 5.605 3.245 ) ( 5.76 3.415 ) ;
+      RECT ( 0 3.09 ) ( 5.76 3.245 ) ;
+      RECT ( 3.195 2.99 ) ( 3.525 3.09 ) ;
+      RECT ( 3.195 2.82 ) ( 3.275 2.99 ) ;
+      RECT ( 3.445 2.82 ) ( 3.525 2.99 ) ;
+      RECT ( 3.195 2.74 ) ( 3.525 2.82 ) ;
+      RECT ( 0.555 2.425 ) ( 0.885 2.505 ) ;
+      RECT ( 0.555 2.255 ) ( 0.635 2.425 ) ;
+      RECT ( 0.805 2.255 ) ( 0.885 2.425 ) ;
+      RECT ( 0.555 2.175 ) ( 0.885 2.255 ) ;
+      RECT ( 2.235 2.425 ) ( 2.565 2.505 ) ;
+      RECT ( 2.235 2.255 ) ( 2.315 2.425 ) ;
+      RECT ( 2.485 2.26 ) ( 2.565 2.425 ) ;
+      RECT ( 4.635 2.425 ) ( 4.965 2.505 ) ;
+      RECT ( 4.635 2.26 ) ( 4.715 2.425 ) ;
+      RECT ( 2.485 2.255 ) ( 2.545 2.26 ) ;
+      RECT ( 2.235 2.175 ) ( 2.545 2.255 ) ;
+      RECT ( 4.655 2.255 ) ( 4.715 2.26 ) ;
+      RECT ( 4.885 2.255 ) ( 4.965 2.425 ) ;
+      RECT ( 4.655 2.175 ) ( 4.965 2.255 ) ;
+      RECT ( 1.275 2.01 ) ( 1.605 2.09 ) ;
+      RECT ( 1.275 1.84 ) ( 1.355 2.01 ) ;
+      RECT ( 1.525 1.84 ) ( 1.605 2.01 ) ;
+      RECT ( 1.275 1.76 ) ( 1.605 1.84 ) ;
+      RECT ( 2.715 2.01 ) ( 3.045 2.09 ) ;
+      RECT ( 2.715 1.84 ) ( 2.795 2.01 ) ;
+      RECT ( 2.965 1.84 ) ( 3.045 2.01 ) ;
+      RECT ( 2.715 1.76 ) ( 3.045 1.84 ) ;
+      RECT ( 4.155 2.01 ) ( 4.485 2.09 ) ;
+      RECT ( 4.155 1.84 ) ( 4.235 2.01 ) ;
+      RECT ( 4.405 1.84 ) ( 4.485 2.01 ) ;
+      RECT ( 4.155 1.76 ) ( 4.485 1.84 ) ;
+      RECT ( 1.275 1.075 ) ( 1.605 1.155 ) ;
+      RECT ( 1.275 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.905 ) ( 1.605 1.075 ) ;
+      RECT ( 1.275 0.825 ) ( 1.605 0.905 ) ;
+      RECT ( 2.715 1.075 ) ( 3.045 1.155 ) ;
+      RECT ( 2.715 0.905 ) ( 2.795 1.075 ) ;
+      RECT ( 2.965 0.905 ) ( 3.045 1.075 ) ;
+      RECT ( 2.715 0.825 ) ( 3.045 0.905 ) ;
+      RECT ( 4.155 1.075 ) ( 4.485 1.155 ) ;
+      RECT ( 4.155 0.905 ) ( 4.235 1.075 ) ;
+      RECT ( 4.405 0.92 ) ( 4.485 1.075 ) ;
+      RECT ( 4.405 0.905 ) ( 4.465 0.92 ) ;
+      RECT ( 4.155 0.825 ) ( 4.465 0.905 ) ;
+      RECT ( 0.555 0.67 ) ( 0.885 0.75 ) ;
+      RECT ( 0.555 0.5 ) ( 0.635 0.67 ) ;
+      RECT ( 0.805 0.5 ) ( 0.885 0.67 ) ;
+      RECT ( 4.635 0.67 ) ( 4.965 0.75 ) ;
+      RECT ( 0.555 0.42 ) ( 0.885 0.5 ) ;
+      RECT ( 1.755 0.51 ) ( 2.085 0.59 ) ;
+      RECT ( 1.755 0.34 ) ( 1.835 0.51 ) ;
+      RECT ( 2.005 0.34 ) ( 2.085 0.51 ) ;
+      RECT ( 4.635 0.5 ) ( 4.715 0.67 ) ;
+      RECT ( 4.885 0.5 ) ( 4.965 0.67 ) ;
+      RECT ( 4.635 0.42 ) ( 4.965 0.5 ) ;
+      RECT ( 1.755 0.24 ) ( 2.085 0.34 ) ;
+      RECT ( 0 0.085 ) ( 5.76 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.475 0.085 ) ;
+      RECT ( 4.645 -0.085 ) ( 4.955 0.085 ) ;
+      RECT ( 5.125 -0.085 ) ( 5.435 0.085 ) ;
+      RECT ( 5.605 -0.085 ) ( 5.76 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 5.76 -0.085 ) ;
     LAYER metal1 ;
-      RECT ( 0 3.42 ) ( 5.76 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
-      RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
-      RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
-      RECT ( 5.61 3.25 ) ( 5.76 3.42 ) ;
-      RECT ( 0 3.09 ) ( 5.76 3.25 ) ;
-      RECT ( 3.22 2.99 ) ( 3.51 3.09 ) ;
-      RECT ( 3.22 2.82 ) ( 3.28 2.99 ) ;
-      RECT ( 3.45 2.82 ) ( 3.51 2.99 ) ;
-      RECT ( 3.22 2.76 ) ( 3.51 2.82 ) ;
-      RECT ( 0.58 2.43 ) ( 0.87 2.49 ) ;
-      RECT ( 0.58 2.26 ) ( 0.64 2.43 ) ;
-      RECT ( 0.81 2.26 ) ( 0.87 2.43 ) ;
-      RECT ( 0.58 2.2 ) ( 0.87 2.26 ) ;
-      RECT ( 2.26 2.43 ) ( 2.55 2.49 ) ;
-      RECT ( 2.26 2.26 ) ( 2.32 2.43 ) ;
-      RECT ( 2.49 2.41 ) ( 2.55 2.43 ) ;
-      RECT ( 4.66 2.43 ) ( 4.95 2.49 ) ;
-      RECT ( 4.66 2.41 ) ( 4.72 2.43 ) ;
-      RECT ( 2.49 2.27 ) ( 4.72 2.41 ) ;
-      RECT ( 2.49 2.26 ) ( 2.55 2.27 ) ;
-      RECT ( 2.26 2.2 ) ( 2.55 2.26 ) ;
-      RECT ( 4.66 2.26 ) ( 4.72 2.27 ) ;
-      RECT ( 4.89 2.26 ) ( 4.95 2.43 ) ;
-      RECT ( 4.66 2.2 ) ( 4.95 2.26 ) ;
-      RECT ( 0.65 0.73 ) ( 0.79 2.2 ) ;
-      RECT ( 1.3 2.01 ) ( 1.59 2.07 ) ;
-      RECT ( 1.3 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.59 2.01 ) ;
-      RECT ( 1.3 1.78 ) ( 1.59 1.84 ) ;
-      RECT ( 2.74 2.01 ) ( 3.03 2.07 ) ;
-      RECT ( 2.74 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.03 2.01 ) ;
-      RECT ( 2.74 1.78 ) ( 3.03 1.84 ) ;
-      RECT ( 4.18 2.01 ) ( 4.47 2.07 ) ;
-      RECT ( 4.18 1.84 ) ( 4.24 2.01 ) ;
-      RECT ( 4.41 1.84 ) ( 4.47 2.01 ) ;
-      RECT ( 4.18 1.78 ) ( 4.47 1.84 ) ;
-      RECT ( 1.37 1.14 ) ( 1.51 1.78 ) ;
-      RECT ( 2.81 1.14 ) ( 2.95 1.78 ) ;
-      RECT ( 4.25 1.14 ) ( 4.39 1.78 ) ;
-      RECT ( 1.3 1.08 ) ( 1.59 1.14 ) ;
-      RECT ( 1.3 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 1.59 1.08 ) ;
-      RECT ( 1.3 0.85 ) ( 1.59 0.91 ) ;
-      RECT ( 2.74 1.08 ) ( 3.03 1.14 ) ;
-      RECT ( 2.74 0.91 ) ( 2.8 1.08 ) ;
-      RECT ( 2.97 0.91 ) ( 3.03 1.08 ) ;
-      RECT ( 2.74 0.85 ) ( 3.03 0.91 ) ;
-      RECT ( 4.18 1.08 ) ( 4.47 1.14 ) ;
-      RECT ( 4.18 0.91 ) ( 4.24 1.08 ) ;
-      RECT ( 4.41 0.91 ) ( 4.47 1.08 ) ;
-      RECT ( 4.18 0.85 ) ( 4.47 0.91 ) ;
-      RECT ( 0.58 0.67 ) ( 0.87 0.73 ) ;
-      RECT ( 0.58 0.5 ) ( 0.64 0.67 ) ;
-      RECT ( 0.81 0.66 ) ( 0.87 0.67 ) ;
-      RECT ( 4.66 0.67 ) ( 4.95 0.73 ) ;
-      RECT ( 4.66 0.66 ) ( 4.72 0.67 ) ;
-      RECT ( 0.81 0.52 ) ( 4.72 0.66 ) ;
-      RECT ( 0.81 0.5 ) ( 0.87 0.52 ) ;
-      RECT ( 0.58 0.44 ) ( 0.87 0.5 ) ;
-      RECT ( 4.66 0.5 ) ( 4.72 0.52 ) ;
-      RECT ( 4.89 0.5 ) ( 4.95 0.67 ) ;
-      RECT ( 4.66 0.44 ) ( 4.95 0.5 ) ;
-      RECT ( 0 0.09 ) ( 5.76 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
-      RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
-      RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
-      RECT ( 5.61 -0.09 ) ( 5.76 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 5.76 -0.09 ) ;
+      RECT ( 0 3.415 ) ( 5.76 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.475 3.415 ) ;
+      RECT ( 4.645 3.245 ) ( 4.955 3.415 ) ;
+      RECT ( 5.125 3.245 ) ( 5.435 3.415 ) ;
+      RECT ( 5.605 3.245 ) ( 5.76 3.415 ) ;
+      RECT ( 0 3.09 ) ( 5.76 3.245 ) ;
+      RECT ( 3.215 2.99 ) ( 3.505 3.09 ) ;
+      RECT ( 3.215 2.82 ) ( 3.275 2.99 ) ;
+      RECT ( 3.445 2.82 ) ( 3.505 2.99 ) ;
+      RECT ( 3.215 2.76 ) ( 3.505 2.82 ) ;
+      RECT ( 0.575 2.425 ) ( 0.865 2.485 ) ;
+      RECT ( 0.575 2.255 ) ( 0.635 2.425 ) ;
+      RECT ( 0.805 2.255 ) ( 0.865 2.425 ) ;
+      RECT ( 0.575 2.195 ) ( 0.865 2.255 ) ;
+      RECT ( 2.255 2.425 ) ( 2.545 2.485 ) ;
+      RECT ( 2.255 2.255 ) ( 2.315 2.425 ) ;
+      RECT ( 2.485 2.41 ) ( 2.545 2.425 ) ;
+      RECT ( 4.655 2.425 ) ( 4.945 2.485 ) ;
+      RECT ( 4.655 2.41 ) ( 4.715 2.425 ) ;
+      RECT ( 2.485 2.27 ) ( 4.715 2.41 ) ;
+      RECT ( 2.485 2.255 ) ( 2.545 2.27 ) ;
+      RECT ( 2.255 2.195 ) ( 2.545 2.255 ) ;
+      RECT ( 4.655 2.255 ) ( 4.715 2.27 ) ;
+      RECT ( 4.885 2.255 ) ( 4.945 2.425 ) ;
+      RECT ( 4.655 2.195 ) ( 4.945 2.255 ) ;
+      RECT ( 0.65 0.73 ) ( 0.79 2.195 ) ;
+      RECT ( 1.295 2.01 ) ( 1.585 2.07 ) ;
+      RECT ( 1.295 1.84 ) ( 1.355 2.01 ) ;
+      RECT ( 1.525 1.84 ) ( 1.585 2.01 ) ;
+      RECT ( 1.295 1.78 ) ( 1.585 1.84 ) ;
+      RECT ( 2.735 2.01 ) ( 3.025 2.07 ) ;
+      RECT ( 2.735 1.84 ) ( 2.795 2.01 ) ;
+      RECT ( 2.965 1.84 ) ( 3.025 2.01 ) ;
+      RECT ( 2.735 1.78 ) ( 3.025 1.84 ) ;
+      RECT ( 4.175 2.01 ) ( 4.465 2.07 ) ;
+      RECT ( 4.175 1.84 ) ( 4.235 2.01 ) ;
+      RECT ( 4.405 1.84 ) ( 4.465 2.01 ) ;
+      RECT ( 4.175 1.78 ) ( 4.465 1.84 ) ;
+      RECT ( 1.37 1.135 ) ( 1.51 1.78 ) ;
+      RECT ( 2.81 1.135 ) ( 2.95 1.78 ) ;
+      RECT ( 4.25 1.135 ) ( 4.39 1.78 ) ;
+      RECT ( 1.295 1.075 ) ( 1.585 1.135 ) ;
+      RECT ( 1.295 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.905 ) ( 1.585 1.075 ) ;
+      RECT ( 1.295 0.845 ) ( 1.585 0.905 ) ;
+      RECT ( 2.735 1.075 ) ( 3.025 1.135 ) ;
+      RECT ( 2.735 0.905 ) ( 2.795 1.075 ) ;
+      RECT ( 2.965 0.905 ) ( 3.025 1.075 ) ;
+      RECT ( 2.735 0.845 ) ( 3.025 0.905 ) ;
+      RECT ( 4.175 1.075 ) ( 4.465 1.135 ) ;
+      RECT ( 4.175 0.905 ) ( 4.235 1.075 ) ;
+      RECT ( 4.405 0.905 ) ( 4.465 1.075 ) ;
+      RECT ( 4.175 0.845 ) ( 4.465 0.905 ) ;
+      RECT ( 0.575 0.67 ) ( 0.865 0.73 ) ;
+      RECT ( 0.575 0.5 ) ( 0.635 0.67 ) ;
+      RECT ( 0.805 0.655 ) ( 0.865 0.67 ) ;
+      RECT ( 4.655 0.67 ) ( 4.945 0.73 ) ;
+      RECT ( 4.655 0.655 ) ( 4.715 0.67 ) ;
+      RECT ( 0.805 0.515 ) ( 4.715 0.655 ) ;
+      RECT ( 0.805 0.5 ) ( 0.865 0.515 ) ;
+      RECT ( 0.575 0.44 ) ( 0.865 0.5 ) ;
+      RECT ( 4.655 0.5 ) ( 4.715 0.515 ) ;
+      RECT ( 4.885 0.5 ) ( 4.945 0.67 ) ;
+      RECT ( 4.655 0.44 ) ( 4.945 0.5 ) ;
+      RECT ( 0 0.085 ) ( 5.76 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.475 0.085 ) ;
+      RECT ( 4.645 -0.085 ) ( 4.955 0.085 ) ;
+      RECT ( 5.125 -0.085 ) ( 5.435 0.085 ) ;
+      RECT ( 5.605 -0.085 ) ( 5.76 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 5.76 -0.085 ) ;
 
   end
 END AOI21X1
diff --git a/cells/lef/AOI21X1.lef.temp b/cells/lef/AOI21X1.lef.temp
index bb309be..c375c88 100644
--- a/cells/lef/AOI21X1.lef.temp
+++ b/cells/lef/AOI21X1.lef.temp
@@ -48,6 +48,19 @@
     END
   END Y
 
+  PIN A
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
+        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
+        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+    END
+  END A
+
   PIN C
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -74,17 +87,4 @@
     END
   END B
 
-  PIN A
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
-        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
-        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-    END
-  END A
-
 END AOI21X1
diff --git a/cells/lef/AOI22X1.lef b/cells/lef/AOI22X1.lef
index 3913b60..0482f94 100644
--- a/cells/lef/AOI22X1.lef
+++ b/cells/lef/AOI22X1.lef
@@ -53,28 +53,15 @@
     SHAPE ABUTMENT ;
     PORT
       LAYER met1 ;
-        RECT 5.140 2.410 5.430 2.490 ;
-        RECT 5.140 2.270 6.310 2.410 ;
-        RECT 5.140 2.200 5.430 2.270 ;
-        RECT 6.170 0.730 6.310 2.270 ;
+        RECT 5.140 2.200 5.430 2.490 ;
         RECT 0.820 0.660 1.110 0.730 ;
+        RECT 5.210 0.660 5.350 2.200 ;
         RECT 6.100 0.660 6.390 0.730 ;
         RECT 0.820 0.520 6.390 0.660 ;
         RECT 0.820 0.440 1.110 0.520 ;
         RECT 6.100 0.440 6.390 0.520 ;
     END
   END Y
-  PIN C
-    DIRECTION INOUT ;
-    USE SIGNAL ;
-    SHAPE ABUTMENT ;
-    PORT
-      LAYER met1 ;
-        RECT 4.180 1.780 4.470 2.070 ;
-        RECT 4.250 1.140 4.390 1.780 ;
-        RECT 4.180 0.850 4.470 1.140 ;
-    END
-  END C
   PIN D
     DIRECTION INOUT ;
     USE SIGNAL ;
@@ -86,17 +73,6 @@
         RECT 5.620 0.850 5.910 1.140 ;
     END
   END D
-  PIN A
-    DIRECTION INOUT ;
-    USE SIGNAL ;
-    SHAPE ABUTMENT ;
-    PORT
-      LAYER met1 ;
-        RECT 2.740 1.780 3.030 2.070 ;
-        RECT 2.810 1.140 2.950 1.780 ;
-        RECT 2.740 0.850 3.030 1.140 ;
-    END
-  END A
   PIN B
     DIRECTION INOUT ;
     USE SIGNAL ;
@@ -108,25 +84,47 @@
         RECT 1.300 0.850 1.590 1.140 ;
     END
   END B
+  PIN C
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 4.180 1.780 4.470 2.070 ;
+        RECT 4.250 1.140 4.390 1.780 ;
+        RECT 4.180 0.850 4.470 1.140 ;
+    END
+  END C
+  PIN A
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 2.740 1.780 3.030 2.070 ;
+        RECT 2.810 1.140 2.950 1.780 ;
+        RECT 2.740 0.850 3.030 1.140 ;
+    END
+  END A
   OBS
       LAYER li1 ;
-        RECT 3.680 2.830 4.010 2.910 ;
-        RECT 3.680 2.660 3.760 2.830 ;
-        RECT 3.930 2.660 4.010 2.830 ;
-        RECT 0.800 2.560 1.130 2.640 ;
-        RECT 3.680 2.580 4.010 2.660 ;
         RECT 6.080 2.830 6.410 2.910 ;
         RECT 6.080 2.660 6.160 2.830 ;
         RECT 6.330 2.660 6.410 2.830 ;
         RECT 6.080 2.580 6.410 2.660 ;
-        RECT 0.800 2.390 0.880 2.560 ;
-        RECT 1.050 2.390 1.130 2.560 ;
-        RECT 0.800 2.310 1.130 2.390 ;
+        RECT 0.800 2.430 1.130 2.510 ;
+        RECT 0.800 2.260 0.880 2.430 ;
+        RECT 1.050 2.260 1.130 2.430 ;
+        RECT 3.200 2.430 3.530 2.510 ;
+        RECT 3.200 2.260 3.280 2.430 ;
+        RECT 3.450 2.260 3.530 2.430 ;
+        RECT 0.800 2.180 1.130 2.260 ;
+        RECT 3.220 2.180 3.530 2.260 ;
         RECT 5.120 2.430 5.450 2.510 ;
         RECT 5.120 2.260 5.200 2.430 ;
         RECT 5.370 2.260 5.450 2.430 ;
-        RECT 5.120 2.180 5.450 2.260 ;
-        RECT 1.280 2.010 1.610 2.090 ;
+        RECT 5.120 2.180 5.430 2.260 ;
+        RECT 1.300 2.010 1.610 2.090 ;
         RECT 1.280 1.840 1.360 2.010 ;
         RECT 1.530 1.840 1.610 2.010 ;
         RECT 1.280 1.760 1.610 1.840 ;
@@ -135,10 +133,10 @@
         RECT 2.970 1.840 3.050 2.010 ;
         RECT 2.720 1.760 3.050 1.840 ;
         RECT 4.160 2.010 4.490 2.090 ;
-        RECT 5.620 2.010 5.930 2.090 ;
         RECT 4.160 1.840 4.240 2.010 ;
         RECT 4.410 1.840 4.490 2.010 ;
         RECT 4.160 1.760 4.490 1.840 ;
+        RECT 5.600 2.010 5.930 2.090 ;
         RECT 5.600 1.840 5.680 2.010 ;
         RECT 5.850 1.840 5.930 2.010 ;
         RECT 5.600 1.760 5.930 1.840 ;
@@ -169,24 +167,24 @@
         RECT 6.330 0.500 6.410 0.670 ;
         RECT 6.080 0.420 6.410 0.500 ;
       LAYER met1 ;
-        RECT 3.700 2.830 3.990 2.890 ;
-        RECT 3.700 2.660 3.760 2.830 ;
-        RECT 3.930 2.820 3.990 2.830 ;
         RECT 6.100 2.830 6.390 2.890 ;
         RECT 6.100 2.820 6.160 2.830 ;
-        RECT 3.930 2.680 6.160 2.820 ;
-        RECT 3.930 2.660 3.990 2.680 ;
-        RECT 0.820 2.560 1.110 2.620 ;
-        RECT 0.820 2.390 0.880 2.560 ;
-        RECT 1.050 2.550 1.110 2.560 ;
-        RECT 3.700 2.600 3.990 2.660 ;
+        RECT 3.290 2.680 6.160 2.820 ;
+        RECT 3.290 2.490 3.430 2.680 ;
         RECT 6.100 2.660 6.160 2.680 ;
         RECT 6.330 2.660 6.390 2.830 ;
         RECT 6.100 2.600 6.390 2.660 ;
-        RECT 3.700 2.550 3.910 2.600 ;
-        RECT 1.050 2.410 3.910 2.550 ;
-        RECT 1.050 2.390 1.110 2.410 ;
-        RECT 0.820 2.330 1.110 2.390 ;
+        RECT 0.820 2.430 1.110 2.490 ;
+        RECT 0.820 2.260 0.880 2.430 ;
+        RECT 1.050 2.410 1.110 2.430 ;
+        RECT 3.220 2.430 3.510 2.490 ;
+        RECT 3.220 2.410 3.280 2.430 ;
+        RECT 1.050 2.270 3.280 2.410 ;
+        RECT 1.050 2.260 1.110 2.270 ;
+        RECT 0.820 2.200 1.110 2.260 ;
+        RECT 3.220 2.260 3.280 2.270 ;
+        RECT 3.450 2.260 3.510 2.430 ;
+        RECT 3.220 2.200 3.510 2.260 ;
   END
 END AOI22X1
 END LIBRARY
diff --git a/cells/lef/AOI22X1.lef.beforemagic b/cells/lef/AOI22X1.lef.beforemagic
index a7460da..16ec3ca 100644
--- a/cells/lef/AOI22X1.lef.beforemagic
+++ b/cells/lef/AOI22X1.lef.beforemagic
@@ -43,26 +43,11 @@
         RECT 0.81500000 0.51500000 6.38500000 0.65500000 ;
         RECT 0.81500000 0.65500000 1.10500000 0.73000000 ;
         RECT 6.09500000 0.65500000 6.38500000 0.73000000 ;
-        RECT 5.13500000 2.19500000 5.42500000 2.27000000 ;
-        RECT 6.17000000 0.73000000 6.31000000 2.27000000 ;
-        RECT 5.13500000 2.27000000 6.31000000 2.41000000 ;
-        RECT 5.13500000 2.41000000 5.42500000 2.48500000 ;
+        RECT 5.21000000 0.65500000 5.35000000 2.19500000 ;
+        RECT 5.13500000 2.19500000 5.42500000 2.48500000 ;
     END
   END Y
 
-  PIN C
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
-        RECT 4.25000000 1.13500000 4.39000000 1.78000000 ;
-        RECT 4.17500000 1.78000000 4.46500000 2.07000000 ;
-    END
-  END C
-
   PIN D
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -76,19 +61,6 @@
     END
   END D
 
-  PIN A
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
-        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
-        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-    END
-  END A
-
   PIN B
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -102,224 +74,251 @@
     END
   END B
 
+  PIN C
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
+        RECT 4.25000000 1.13500000 4.39000000 1.78000000 ;
+        RECT 4.17500000 1.78000000 4.46500000 2.07000000 ;
+    END
+  END C
+
+  PIN A
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
+        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
+        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+    END
+  END A
+
 
   OBS
     LAYER locali ;
-      RECT ( 0 3.42 ) ( 7.2 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
-      RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
-      RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
-      RECT ( 5.61 3.25 ) ( 5.92 3.42 ) ;
-      RECT ( 6.09 3.25 ) ( 6.4 3.42 ) ;
-      RECT ( 6.57 3.25 ) ( 6.88 3.42 ) ;
-      RECT ( 7.05 3.25 ) ( 7.2 3.42 ) ;
-      RECT ( 0 3.09 ) ( 7.2 3.25 ) ;
-      RECT ( 1.76 2.99 ) ( 2.09 3.09 ) ;
-      RECT ( 1.76 2.82 ) ( 1.84 2.99 ) ;
-      RECT ( 2.01 2.82 ) ( 2.09 2.99 ) ;
-      RECT ( 1.76 2.74 ) ( 2.09 2.82 ) ;
-      RECT ( 3.68 2.83 ) ( 4.01 2.91 ) ;
-      RECT ( 3.68 2.66 ) ( 3.76 2.83 ) ;
-      RECT ( 3.93 2.66 ) ( 4.01 2.83 ) ;
-      RECT ( 0.8 2.56 ) ( 1.13 2.64 ) ;
-      RECT ( 3.68 2.58 ) ( 4.01 2.66 ) ;
-      RECT ( 6.08 2.83 ) ( 6.41 2.91 ) ;
-      RECT ( 6.08 2.66 ) ( 6.16 2.83 ) ;
-      RECT ( 6.33 2.66 ) ( 6.41 2.83 ) ;
-      RECT ( 6.08 2.58 ) ( 6.41 2.66 ) ;
-      RECT ( 0.8 2.39 ) ( 0.88 2.56 ) ;
-      RECT ( 1.05 2.39 ) ( 1.13 2.56 ) ;
-      RECT ( 0.8 2.31 ) ( 1.13 2.39 ) ;
-      RECT ( 5.12 2.43 ) ( 5.45 2.51 ) ;
-      RECT ( 5.12 2.26 ) ( 5.2 2.43 ) ;
-      RECT ( 5.37 2.26 ) ( 5.45 2.43 ) ;
-      RECT ( 5.12 2.18 ) ( 5.45 2.26 ) ;
-      RECT ( 1.28 2.01 ) ( 1.61 2.09 ) ;
-      RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
-      RECT ( 1.28 1.76 ) ( 1.61 1.84 ) ;
-      RECT ( 2.72 2.01 ) ( 3.05 2.09 ) ;
-      RECT ( 2.72 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.05 2.01 ) ;
-      RECT ( 2.72 1.76 ) ( 3.05 1.84 ) ;
-      RECT ( 4.16 2.01 ) ( 4.49 2.09 ) ;
-      RECT ( 5.62 2.01 ) ( 5.93 2.09 ) ;
-      RECT ( 4.16 1.84 ) ( 4.24 2.01 ) ;
-      RECT ( 4.41 1.84 ) ( 4.49 2.01 ) ;
-      RECT ( 4.16 1.76 ) ( 4.49 1.84 ) ;
-      RECT ( 5.6 1.84 ) ( 5.68 2.01 ) ;
-      RECT ( 5.85 1.84 ) ( 5.93 2.01 ) ;
-      RECT ( 5.6 1.76 ) ( 5.93 1.84 ) ;
-      RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
-      RECT ( 1.28 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
-      RECT ( 1.28 0.83 ) ( 1.61 0.91 ) ;
-      RECT ( 2.72 1.08 ) ( 3.05 1.16 ) ;
-      RECT ( 2.72 0.91 ) ( 2.8 1.08 ) ;
-      RECT ( 2.97 0.91 ) ( 3.05 1.08 ) ;
-      RECT ( 2.72 0.83 ) ( 3.05 0.91 ) ;
-      RECT ( 4.16 1.08 ) ( 4.49 1.16 ) ;
-      RECT ( 4.16 0.91 ) ( 4.24 1.08 ) ;
-      RECT ( 4.41 0.91 ) ( 4.49 1.08 ) ;
-      RECT ( 4.16 0.83 ) ( 4.49 0.91 ) ;
-      RECT ( 5.6 1.08 ) ( 5.93 1.16 ) ;
-      RECT ( 5.6 0.91 ) ( 5.68 1.08 ) ;
-      RECT ( 5.85 0.92 ) ( 5.93 1.08 ) ;
-      RECT ( 5.85 0.91 ) ( 5.91 0.92 ) ;
-      RECT ( 5.6 0.83 ) ( 5.91 0.91 ) ;
-      RECT ( 0.8 0.67 ) ( 1.11 0.75 ) ;
-      RECT ( 0.8 0.5 ) ( 0.88 0.67 ) ;
-      RECT ( 1.05 0.66 ) ( 1.11 0.67 ) ;
-      RECT ( 6.08 0.67 ) ( 6.41 0.75 ) ;
-      RECT ( 1.05 0.5 ) ( 1.13 0.66 ) ;
-      RECT ( 0.8 0.42 ) ( 1.13 0.5 ) ;
-      RECT ( 3.2 0.51 ) ( 3.53 0.59 ) ;
-      RECT ( 3.2 0.34 ) ( 3.28 0.51 ) ;
-      RECT ( 3.45 0.34 ) ( 3.53 0.51 ) ;
-      RECT ( 6.08 0.5 ) ( 6.16 0.67 ) ;
-      RECT ( 6.33 0.5 ) ( 6.41 0.67 ) ;
-      RECT ( 6.08 0.42 ) ( 6.41 0.5 ) ;
-      RECT ( 3.2 0.24 ) ( 3.53 0.34 ) ;
-      RECT ( 0 0.09 ) ( 7.2 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
-      RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
-      RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
-      RECT ( 5.61 -0.09 ) ( 5.92 0.09 ) ;
-      RECT ( 6.09 -0.09 ) ( 6.4 0.09 ) ;
-      RECT ( 6.57 -0.09 ) ( 6.88 0.09 ) ;
-      RECT ( 7.05 -0.09 ) ( 7.2 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 7.2 -0.09 ) ;
+      RECT ( 0 3.415 ) ( 7.2 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.475 3.415 ) ;
+      RECT ( 4.645 3.245 ) ( 4.955 3.415 ) ;
+      RECT ( 5.125 3.245 ) ( 5.435 3.415 ) ;
+      RECT ( 5.605 3.245 ) ( 5.915 3.415 ) ;
+      RECT ( 6.085 3.245 ) ( 6.395 3.415 ) ;
+      RECT ( 6.565 3.245 ) ( 6.875 3.415 ) ;
+      RECT ( 7.045 3.245 ) ( 7.2 3.415 ) ;
+      RECT ( 0 3.09 ) ( 7.2 3.245 ) ;
+      RECT ( 1.755 2.99 ) ( 2.085 3.09 ) ;
+      RECT ( 1.755 2.82 ) ( 1.835 2.99 ) ;
+      RECT ( 2.005 2.82 ) ( 2.085 2.99 ) ;
+      RECT ( 1.755 2.74 ) ( 2.085 2.82 ) ;
+      RECT ( 6.075 2.83 ) ( 6.405 2.91 ) ;
+      RECT ( 6.075 2.66 ) ( 6.155 2.83 ) ;
+      RECT ( 6.325 2.66 ) ( 6.405 2.83 ) ;
+      RECT ( 6.075 2.58 ) ( 6.405 2.66 ) ;
+      RECT ( 0.795 2.425 ) ( 1.125 2.505 ) ;
+      RECT ( 0.795 2.255 ) ( 0.875 2.425 ) ;
+      RECT ( 1.045 2.255 ) ( 1.125 2.425 ) ;
+      RECT ( 3.195 2.425 ) ( 3.525 2.505 ) ;
+      RECT ( 3.195 2.26 ) ( 3.275 2.425 ) ;
+      RECT ( 0.795 2.175 ) ( 1.125 2.255 ) ;
+      RECT ( 3.215 2.255 ) ( 3.275 2.26 ) ;
+      RECT ( 3.445 2.255 ) ( 3.525 2.425 ) ;
+      RECT ( 3.215 2.175 ) ( 3.525 2.255 ) ;
+      RECT ( 5.115 2.425 ) ( 5.445 2.505 ) ;
+      RECT ( 5.115 2.255 ) ( 5.195 2.425 ) ;
+      RECT ( 5.365 2.26 ) ( 5.445 2.425 ) ;
+      RECT ( 5.365 2.255 ) ( 5.425 2.26 ) ;
+      RECT ( 5.115 2.175 ) ( 5.425 2.255 ) ;
+      RECT ( 1.295 2.01 ) ( 1.605 2.09 ) ;
+      RECT ( 1.295 2.005 ) ( 1.355 2.01 ) ;
+      RECT ( 1.275 1.84 ) ( 1.355 2.005 ) ;
+      RECT ( 1.525 1.84 ) ( 1.605 2.01 ) ;
+      RECT ( 1.275 1.76 ) ( 1.605 1.84 ) ;
+      RECT ( 2.715 2.01 ) ( 3.045 2.09 ) ;
+      RECT ( 2.715 1.84 ) ( 2.795 2.01 ) ;
+      RECT ( 2.965 1.84 ) ( 3.045 2.01 ) ;
+      RECT ( 2.715 1.76 ) ( 3.045 1.84 ) ;
+      RECT ( 4.155 2.01 ) ( 4.485 2.09 ) ;
+      RECT ( 4.155 1.84 ) ( 4.235 2.01 ) ;
+      RECT ( 4.405 1.84 ) ( 4.485 2.01 ) ;
+      RECT ( 4.155 1.76 ) ( 4.485 1.84 ) ;
+      RECT ( 5.595 2.01 ) ( 5.925 2.09 ) ;
+      RECT ( 5.595 1.84 ) ( 5.675 2.01 ) ;
+      RECT ( 5.845 1.84 ) ( 5.925 2.01 ) ;
+      RECT ( 5.595 1.76 ) ( 5.925 1.84 ) ;
+      RECT ( 1.275 1.075 ) ( 1.605 1.155 ) ;
+      RECT ( 1.275 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.905 ) ( 1.605 1.075 ) ;
+      RECT ( 1.275 0.825 ) ( 1.605 0.905 ) ;
+      RECT ( 2.715 1.075 ) ( 3.045 1.155 ) ;
+      RECT ( 2.715 0.905 ) ( 2.795 1.075 ) ;
+      RECT ( 2.965 0.905 ) ( 3.045 1.075 ) ;
+      RECT ( 2.715 0.825 ) ( 3.045 0.905 ) ;
+      RECT ( 4.155 1.075 ) ( 4.485 1.155 ) ;
+      RECT ( 4.155 0.905 ) ( 4.235 1.075 ) ;
+      RECT ( 4.405 0.905 ) ( 4.485 1.075 ) ;
+      RECT ( 4.155 0.825 ) ( 4.485 0.905 ) ;
+      RECT ( 5.595 1.075 ) ( 5.925 1.155 ) ;
+      RECT ( 5.595 0.905 ) ( 5.675 1.075 ) ;
+      RECT ( 5.845 0.92 ) ( 5.925 1.075 ) ;
+      RECT ( 5.845 0.905 ) ( 5.905 0.92 ) ;
+      RECT ( 5.595 0.825 ) ( 5.905 0.905 ) ;
+      RECT ( 0.795 0.67 ) ( 1.105 0.75 ) ;
+      RECT ( 0.795 0.5 ) ( 0.875 0.67 ) ;
+      RECT ( 1.045 0.655 ) ( 1.105 0.67 ) ;
+      RECT ( 6.075 0.67 ) ( 6.405 0.75 ) ;
+      RECT ( 1.045 0.5 ) ( 1.125 0.655 ) ;
+      RECT ( 0.795 0.42 ) ( 1.125 0.5 ) ;
+      RECT ( 3.195 0.51 ) ( 3.525 0.59 ) ;
+      RECT ( 3.195 0.34 ) ( 3.275 0.51 ) ;
+      RECT ( 3.445 0.34 ) ( 3.525 0.51 ) ;
+      RECT ( 6.075 0.5 ) ( 6.155 0.67 ) ;
+      RECT ( 6.325 0.5 ) ( 6.405 0.67 ) ;
+      RECT ( 6.075 0.42 ) ( 6.405 0.5 ) ;
+      RECT ( 3.195 0.24 ) ( 3.525 0.34 ) ;
+      RECT ( 0 0.085 ) ( 7.2 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.475 0.085 ) ;
+      RECT ( 4.645 -0.085 ) ( 4.955 0.085 ) ;
+      RECT ( 5.125 -0.085 ) ( 5.435 0.085 ) ;
+      RECT ( 5.605 -0.085 ) ( 5.915 0.085 ) ;
+      RECT ( 6.085 -0.085 ) ( 6.395 0.085 ) ;
+      RECT ( 6.565 -0.085 ) ( 6.875 0.085 ) ;
+      RECT ( 7.045 -0.085 ) ( 7.2 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 7.2 -0.085 ) ;
     LAYER metal1 ;
-      RECT ( 0 3.42 ) ( 7.2 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
-      RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
-      RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
-      RECT ( 5.61 3.25 ) ( 5.92 3.42 ) ;
-      RECT ( 6.09 3.25 ) ( 6.4 3.42 ) ;
-      RECT ( 6.57 3.25 ) ( 6.88 3.42 ) ;
-      RECT ( 7.05 3.25 ) ( 7.2 3.42 ) ;
-      RECT ( 0 3.09 ) ( 7.2 3.25 ) ;
-      RECT ( 1.78 2.99 ) ( 2.07 3.09 ) ;
-      RECT ( 1.78 2.82 ) ( 1.84 2.99 ) ;
-      RECT ( 2.01 2.82 ) ( 2.07 2.99 ) ;
-      RECT ( 1.78 2.76 ) ( 2.07 2.82 ) ;
-      RECT ( 3.7 2.83 ) ( 3.99 2.89 ) ;
-      RECT ( 3.7 2.66 ) ( 3.76 2.83 ) ;
-      RECT ( 3.93 2.82 ) ( 3.99 2.83 ) ;
-      RECT ( 6.1 2.83 ) ( 6.39 2.89 ) ;
-      RECT ( 6.1 2.82 ) ( 6.16 2.83 ) ;
-      RECT ( 3.93 2.68 ) ( 6.16 2.82 ) ;
-      RECT ( 3.93 2.66 ) ( 3.99 2.68 ) ;
-      RECT ( 0.82 2.56 ) ( 1.11 2.62 ) ;
-      RECT ( 0.82 2.39 ) ( 0.88 2.56 ) ;
-      RECT ( 1.05 2.55 ) ( 1.11 2.56 ) ;
-      RECT ( 3.7 2.6 ) ( 3.99 2.66 ) ;
-      RECT ( 6.1 2.66 ) ( 6.16 2.68 ) ;
-      RECT ( 6.33 2.66 ) ( 6.39 2.83 ) ;
-      RECT ( 6.1 2.6 ) ( 6.39 2.66 ) ;
-      RECT ( 3.7 2.55 ) ( 3.91 2.6 ) ;
-      RECT ( 1.05 2.41 ) ( 3.91 2.55 ) ;
-      RECT ( 5.14 2.43 ) ( 5.43 2.49 ) ;
-      RECT ( 1.05 2.39 ) ( 1.11 2.41 ) ;
-      RECT ( 0.82 2.33 ) ( 1.11 2.39 ) ;
-      RECT ( 5.14 2.26 ) ( 5.2 2.43 ) ;
-      RECT ( 5.37 2.41 ) ( 5.43 2.43 ) ;
-      RECT ( 5.37 2.27 ) ( 6.31 2.41 ) ;
-      RECT ( 5.37 2.26 ) ( 5.43 2.27 ) ;
-      RECT ( 5.14 2.2 ) ( 5.43 2.26 ) ;
-      RECT ( 1.3 2.01 ) ( 1.59 2.07 ) ;
-      RECT ( 1.3 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.59 2.01 ) ;
-      RECT ( 1.3 1.78 ) ( 1.59 1.84 ) ;
-      RECT ( 2.74 2.01 ) ( 3.03 2.07 ) ;
-      RECT ( 2.74 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.03 2.01 ) ;
-      RECT ( 2.74 1.78 ) ( 3.03 1.84 ) ;
-      RECT ( 4.18 2.01 ) ( 4.47 2.07 ) ;
-      RECT ( 4.18 1.84 ) ( 4.24 2.01 ) ;
-      RECT ( 4.41 1.84 ) ( 4.47 2.01 ) ;
-      RECT ( 4.18 1.78 ) ( 4.47 1.84 ) ;
-      RECT ( 5.62 2.01 ) ( 5.91 2.07 ) ;
-      RECT ( 5.62 1.84 ) ( 5.68 2.01 ) ;
-      RECT ( 5.85 1.84 ) ( 5.91 2.01 ) ;
-      RECT ( 5.62 1.78 ) ( 5.91 1.84 ) ;
-      RECT ( 1.37 1.14 ) ( 1.51 1.78 ) ;
-      RECT ( 2.81 1.14 ) ( 2.95 1.78 ) ;
-      RECT ( 4.25 1.14 ) ( 4.39 1.78 ) ;
-      RECT ( 5.69 1.14 ) ( 5.83 1.78 ) ;
-      RECT ( 1.3 1.08 ) ( 1.59 1.14 ) ;
-      RECT ( 1.3 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 1.59 1.08 ) ;
-      RECT ( 1.3 0.85 ) ( 1.59 0.91 ) ;
-      RECT ( 2.74 1.08 ) ( 3.03 1.14 ) ;
-      RECT ( 2.74 0.91 ) ( 2.8 1.08 ) ;
-      RECT ( 2.97 0.91 ) ( 3.03 1.08 ) ;
-      RECT ( 2.74 0.85 ) ( 3.03 0.91 ) ;
-      RECT ( 4.18 1.08 ) ( 4.47 1.14 ) ;
-      RECT ( 4.18 0.91 ) ( 4.24 1.08 ) ;
-      RECT ( 4.41 0.91 ) ( 4.47 1.08 ) ;
-      RECT ( 4.18 0.85 ) ( 4.47 0.91 ) ;
-      RECT ( 5.62 1.08 ) ( 5.91 1.14 ) ;
-      RECT ( 5.62 0.91 ) ( 5.68 1.08 ) ;
-      RECT ( 5.85 0.91 ) ( 5.91 1.08 ) ;
-      RECT ( 5.62 0.85 ) ( 5.91 0.91 ) ;
-      RECT ( 6.17 0.73 ) ( 6.31 2.27 ) ;
-      RECT ( 0.82 0.67 ) ( 1.11 0.73 ) ;
-      RECT ( 0.82 0.5 ) ( 0.88 0.67 ) ;
-      RECT ( 1.05 0.66 ) ( 1.11 0.67 ) ;
-      RECT ( 6.1 0.67 ) ( 6.39 0.73 ) ;
-      RECT ( 6.1 0.66 ) ( 6.16 0.67 ) ;
-      RECT ( 1.05 0.52 ) ( 6.16 0.66 ) ;
-      RECT ( 1.05 0.5 ) ( 1.11 0.52 ) ;
-      RECT ( 0.82 0.44 ) ( 1.11 0.5 ) ;
-      RECT ( 6.1 0.5 ) ( 6.16 0.52 ) ;
-      RECT ( 6.33 0.5 ) ( 6.39 0.67 ) ;
-      RECT ( 6.1 0.44 ) ( 6.39 0.5 ) ;
-      RECT ( 0 0.09 ) ( 7.2 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
-      RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
-      RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
-      RECT ( 5.61 -0.09 ) ( 5.92 0.09 ) ;
-      RECT ( 6.09 -0.09 ) ( 6.4 0.09 ) ;
-      RECT ( 6.57 -0.09 ) ( 6.88 0.09 ) ;
-      RECT ( 7.05 -0.09 ) ( 7.2 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 7.2 -0.09 ) ;
+      RECT ( 0 3.415 ) ( 7.2 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.475 3.415 ) ;
+      RECT ( 4.645 3.245 ) ( 4.955 3.415 ) ;
+      RECT ( 5.125 3.245 ) ( 5.435 3.415 ) ;
+      RECT ( 5.605 3.245 ) ( 5.915 3.415 ) ;
+      RECT ( 6.085 3.245 ) ( 6.395 3.415 ) ;
+      RECT ( 6.565 3.245 ) ( 6.875 3.415 ) ;
+      RECT ( 7.045 3.245 ) ( 7.2 3.415 ) ;
+      RECT ( 0 3.09 ) ( 7.2 3.245 ) ;
+      RECT ( 1.775 2.99 ) ( 2.065 3.09 ) ;
+      RECT ( 1.775 2.82 ) ( 1.835 2.99 ) ;
+      RECT ( 2.005 2.82 ) ( 2.065 2.99 ) ;
+      RECT ( 1.775 2.76 ) ( 2.065 2.82 ) ;
+      RECT ( 6.095 2.83 ) ( 6.385 2.89 ) ;
+      RECT ( 6.095 2.815 ) ( 6.155 2.83 ) ;
+      RECT ( 3.29 2.675 ) ( 6.155 2.815 ) ;
+      RECT ( 3.29 2.485 ) ( 3.43 2.675 ) ;
+      RECT ( 6.095 2.66 ) ( 6.155 2.675 ) ;
+      RECT ( 6.325 2.66 ) ( 6.385 2.83 ) ;
+      RECT ( 6.095 2.6 ) ( 6.385 2.66 ) ;
+      RECT ( 0.815 2.425 ) ( 1.105 2.485 ) ;
+      RECT ( 0.815 2.255 ) ( 0.875 2.425 ) ;
+      RECT ( 1.045 2.41 ) ( 1.105 2.425 ) ;
+      RECT ( 3.215 2.425 ) ( 3.505 2.485 ) ;
+      RECT ( 3.215 2.41 ) ( 3.275 2.425 ) ;
+      RECT ( 1.045 2.27 ) ( 3.275 2.41 ) ;
+      RECT ( 1.045 2.255 ) ( 1.105 2.27 ) ;
+      RECT ( 0.815 2.195 ) ( 1.105 2.255 ) ;
+      RECT ( 3.215 2.255 ) ( 3.275 2.27 ) ;
+      RECT ( 3.445 2.255 ) ( 3.505 2.425 ) ;
+      RECT ( 3.215 2.195 ) ( 3.505 2.255 ) ;
+      RECT ( 5.135 2.425 ) ( 5.425 2.485 ) ;
+      RECT ( 5.135 2.255 ) ( 5.195 2.425 ) ;
+      RECT ( 5.365 2.255 ) ( 5.425 2.425 ) ;
+      RECT ( 5.135 2.195 ) ( 5.425 2.255 ) ;
+      RECT ( 1.295 2.01 ) ( 1.585 2.07 ) ;
+      RECT ( 1.295 1.84 ) ( 1.355 2.01 ) ;
+      RECT ( 1.525 1.84 ) ( 1.585 2.01 ) ;
+      RECT ( 1.295 1.78 ) ( 1.585 1.84 ) ;
+      RECT ( 2.735 2.01 ) ( 3.025 2.07 ) ;
+      RECT ( 2.735 1.84 ) ( 2.795 2.01 ) ;
+      RECT ( 2.965 1.84 ) ( 3.025 2.01 ) ;
+      RECT ( 2.735 1.78 ) ( 3.025 1.84 ) ;
+      RECT ( 4.175 2.01 ) ( 4.465 2.07 ) ;
+      RECT ( 4.175 1.84 ) ( 4.235 2.01 ) ;
+      RECT ( 4.405 1.84 ) ( 4.465 2.01 ) ;
+      RECT ( 4.175 1.78 ) ( 4.465 1.84 ) ;
+      RECT ( 1.37 1.135 ) ( 1.51 1.78 ) ;
+      RECT ( 2.81 1.135 ) ( 2.95 1.78 ) ;
+      RECT ( 4.25 1.135 ) ( 4.39 1.78 ) ;
+      RECT ( 1.295 1.075 ) ( 1.585 1.135 ) ;
+      RECT ( 1.295 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.905 ) ( 1.585 1.075 ) ;
+      RECT ( 1.295 0.845 ) ( 1.585 0.905 ) ;
+      RECT ( 2.735 1.075 ) ( 3.025 1.135 ) ;
+      RECT ( 2.735 0.905 ) ( 2.795 1.075 ) ;
+      RECT ( 2.965 0.905 ) ( 3.025 1.075 ) ;
+      RECT ( 2.735 0.845 ) ( 3.025 0.905 ) ;
+      RECT ( 4.175 1.075 ) ( 4.465 1.135 ) ;
+      RECT ( 4.175 0.905 ) ( 4.235 1.075 ) ;
+      RECT ( 4.405 0.905 ) ( 4.465 1.075 ) ;
+      RECT ( 4.175 0.845 ) ( 4.465 0.905 ) ;
+      RECT ( 0.815 0.67 ) ( 1.105 0.73 ) ;
+      RECT ( 0.815 0.5 ) ( 0.875 0.67 ) ;
+      RECT ( 1.045 0.655 ) ( 1.105 0.67 ) ;
+      RECT ( 5.21 0.655 ) ( 5.35 2.195 ) ;
+      RECT ( 5.615 2.01 ) ( 5.905 2.07 ) ;
+      RECT ( 5.615 1.84 ) ( 5.675 2.01 ) ;
+      RECT ( 5.845 1.84 ) ( 5.905 2.01 ) ;
+      RECT ( 5.615 1.78 ) ( 5.905 1.84 ) ;
+      RECT ( 5.69 1.135 ) ( 5.83 1.78 ) ;
+      RECT ( 5.615 1.075 ) ( 5.905 1.135 ) ;
+      RECT ( 5.615 0.905 ) ( 5.675 1.075 ) ;
+      RECT ( 5.845 0.905 ) ( 5.905 1.075 ) ;
+      RECT ( 5.615 0.845 ) ( 5.905 0.905 ) ;
+      RECT ( 6.095 0.67 ) ( 6.385 0.73 ) ;
+      RECT ( 6.095 0.655 ) ( 6.155 0.67 ) ;
+      RECT ( 1.045 0.515 ) ( 6.155 0.655 ) ;
+      RECT ( 1.045 0.5 ) ( 1.105 0.515 ) ;
+      RECT ( 0.815 0.44 ) ( 1.105 0.5 ) ;
+      RECT ( 6.095 0.5 ) ( 6.155 0.515 ) ;
+      RECT ( 6.325 0.5 ) ( 6.385 0.67 ) ;
+      RECT ( 6.095 0.44 ) ( 6.385 0.5 ) ;
+      RECT ( 0 0.085 ) ( 7.2 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.475 0.085 ) ;
+      RECT ( 4.645 -0.085 ) ( 4.955 0.085 ) ;
+      RECT ( 5.125 -0.085 ) ( 5.435 0.085 ) ;
+      RECT ( 5.605 -0.085 ) ( 5.915 0.085 ) ;
+      RECT ( 6.085 -0.085 ) ( 6.395 0.085 ) ;
+      RECT ( 6.565 -0.085 ) ( 6.875 0.085 ) ;
+      RECT ( 7.045 -0.085 ) ( 7.2 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 7.2 -0.085 ) ;
 
   end
 END AOI22X1
diff --git a/cells/lef/AOI22X1.lef.temp b/cells/lef/AOI22X1.lef.temp
index 127be60..1ec3a84 100644
--- a/cells/lef/AOI22X1.lef.temp
+++ b/cells/lef/AOI22X1.lef.temp
@@ -43,26 +43,11 @@
         RECT 0.81500000 0.51500000 6.38500000 0.65500000 ;
         RECT 0.81500000 0.65500000 1.10500000 0.73000000 ;
         RECT 6.09500000 0.65500000 6.38500000 0.73000000 ;
-        RECT 5.13500000 2.19500000 5.42500000 2.27000000 ;
-        RECT 6.17000000 0.73000000 6.31000000 2.27000000 ;
-        RECT 5.13500000 2.27000000 6.31000000 2.41000000 ;
-        RECT 5.13500000 2.41000000 5.42500000 2.48500000 ;
+        RECT 5.21000000 0.65500000 5.35000000 2.19500000 ;
+        RECT 5.13500000 2.19500000 5.42500000 2.48500000 ;
     END
   END Y
 
-  PIN C
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
-        RECT 4.25000000 1.13500000 4.39000000 1.78000000 ;
-        RECT 4.17500000 1.78000000 4.46500000 2.07000000 ;
-    END
-  END C
-
   PIN D
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -76,19 +61,6 @@
     END
   END D
 
-  PIN A
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
-        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
-        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-    END
-  END A
-
   PIN B
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -102,4 +74,30 @@
     END
   END B
 
+  PIN C
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
+        RECT 4.25000000 1.13500000 4.39000000 1.78000000 ;
+        RECT 4.17500000 1.78000000 4.46500000 2.07000000 ;
+    END
+  END C
+
+  PIN A
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
+        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
+        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+    END
+  END A
+
 END AOI22X1
diff --git a/cells/lef/BUFX2.lef b/cells/lef/BUFX2.lef
index b62c0fa..a04adf6 100644
--- a/cells/lef/BUFX2.lef
+++ b/cells/lef/BUFX2.lef
@@ -68,9 +68,7 @@
     SHAPE ABUTMENT ;
     PORT
       LAYER met1 ;
-        RECT 1.300 1.780 1.590 2.070 ;
-        RECT 1.370 1.540 1.510 1.780 ;
-        RECT 1.300 1.250 1.590 1.540 ;
+        RECT 1.300 0.850 1.590 1.140 ;
     END
   END A
   OBS
@@ -91,7 +89,7 @@
         RECT 2.720 1.840 2.800 2.010 ;
         RECT 2.970 1.840 3.050 2.010 ;
         RECT 2.720 1.760 3.050 1.840 ;
-        RECT 1.360 1.160 1.530 1.310 ;
+        RECT 1.360 1.160 1.530 1.760 ;
         RECT 1.280 1.080 1.610 1.160 ;
         RECT 1.280 0.910 1.360 1.080 ;
         RECT 1.530 0.910 1.610 1.080 ;
@@ -114,17 +112,17 @@
         RECT 0.580 2.260 0.640 2.430 ;
         RECT 0.810 2.260 0.870 2.430 ;
         RECT 0.580 2.200 0.870 2.260 ;
-        RECT 0.650 1.060 0.790 2.200 ;
+        RECT 0.650 2.000 0.790 2.200 ;
         RECT 2.740 2.010 3.030 2.070 ;
-        RECT 2.740 1.840 2.800 2.010 ;
+        RECT 2.740 2.000 2.800 2.010 ;
+        RECT 0.650 1.860 2.800 2.000 ;
+        RECT 0.650 0.730 0.790 1.860 ;
+        RECT 2.740 1.840 2.800 1.860 ;
         RECT 2.970 1.840 3.030 2.010 ;
         RECT 2.740 1.780 3.030 1.840 ;
         RECT 2.810 1.140 2.950 1.780 ;
         RECT 2.740 1.080 3.030 1.140 ;
-        RECT 2.740 1.060 2.800 1.080 ;
-        RECT 0.650 0.920 2.800 1.060 ;
-        RECT 0.650 0.730 0.790 0.920 ;
-        RECT 2.740 0.910 2.800 0.920 ;
+        RECT 2.740 0.910 2.800 1.080 ;
         RECT 2.970 0.910 3.030 1.080 ;
         RECT 2.740 0.850 3.030 0.910 ;
         RECT 0.580 0.670 0.870 0.730 ;
diff --git a/cells/lef/BUFX2.lef.beforemagic b/cells/lef/BUFX2.lef.beforemagic
index 18990c2..07e4cba 100644
--- a/cells/lef/BUFX2.lef.beforemagic
+++ b/cells/lef/BUFX2.lef.beforemagic
@@ -51,153 +51,147 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 1.29500000 1.25000000 1.58500000 1.54000000 ;
-        RECT 1.37000000 1.54000000 1.51000000 1.78000000 ;
-        RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
+        RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
     END
   END A
 
 
   OBS
     LAYER locali ;
-      RECT ( 0 3.42 ) ( 4.32 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.32 3.42 ) ;
-      RECT ( 0 3.09 ) ( 4.32 3.25 ) ;
-      RECT ( 1.76 2.99 ) ( 2.09 3.09 ) ;
-      RECT ( 1.76 2.82 ) ( 1.84 2.99 ) ;
-      RECT ( 2.01 2.82 ) ( 2.09 2.99 ) ;
-      RECT ( 1.76 2.74 ) ( 2.09 2.82 ) ;
-      RECT ( 0.56 2.43 ) ( 0.89 2.51 ) ;
-      RECT ( 0.56 2.26 ) ( 0.64 2.43 ) ;
-      RECT ( 0.81 2.26 ) ( 0.89 2.43 ) ;
-      RECT ( 0.56 2.18 ) ( 0.89 2.26 ) ;
-      RECT ( 3.2 2.43 ) ( 3.53 2.51 ) ;
-      RECT ( 3.2 2.26 ) ( 3.28 2.43 ) ;
-      RECT ( 3.45 2.26 ) ( 3.53 2.43 ) ;
-      RECT ( 3.2 2.18 ) ( 3.53 2.26 ) ;
-      RECT ( 1.28 2.01 ) ( 1.61 2.09 ) ;
-      RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
-      RECT ( 1.28 1.76 ) ( 1.61 1.84 ) ;
-      RECT ( 2.72 2.01 ) ( 3.03 2.09 ) ;
-      RECT ( 2.72 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.05 2.01 ) ;
-      RECT ( 2.72 1.76 ) ( 3.05 1.84 ) ;
-      RECT ( 1.36 1.16 ) ( 1.53 1.31 ) ;
-      RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
-      RECT ( 1.28 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
-      RECT ( 1.28 0.83 ) ( 1.61 0.91 ) ;
-      RECT ( 2.72 1.08 ) ( 3.05 1.16 ) ;
-      RECT ( 2.72 0.91 ) ( 2.8 1.08 ) ;
-      RECT ( 2.97 0.92 ) ( 3.05 1.08 ) ;
-      RECT ( 2.97 0.91 ) ( 3.03 0.92 ) ;
-      RECT ( 2.72 0.83 ) ( 3.03 0.91 ) ;
-      RECT ( 0.56 0.67 ) ( 0.89 0.75 ) ;
-      RECT ( 0.56 0.5 ) ( 0.64 0.67 ) ;
-      RECT ( 0.81 0.5 ) ( 0.89 0.67 ) ;
-      RECT ( 3.2 0.67 ) ( 3.53 0.75 ) ;
-      RECT ( 0.56 0.42 ) ( 0.89 0.5 ) ;
-      RECT ( 1.76 0.51 ) ( 2.09 0.59 ) ;
-      RECT ( 1.76 0.34 ) ( 1.84 0.51 ) ;
-      RECT ( 2.01 0.34 ) ( 2.09 0.51 ) ;
-      RECT ( 3.2 0.5 ) ( 3.28 0.67 ) ;
-      RECT ( 3.45 0.5 ) ( 3.53 0.67 ) ;
-      RECT ( 3.2 0.42 ) ( 3.53 0.5 ) ;
-      RECT ( 1.76 0.24 ) ( 2.09 0.34 ) ;
-      RECT ( 0 0.09 ) ( 4.32 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.32 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 4.32 -0.09 ) ;
+      RECT ( 0 3.415 ) ( 4.32 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.32 3.415 ) ;
+      RECT ( 0 3.09 ) ( 4.32 3.245 ) ;
+      RECT ( 1.755 2.99 ) ( 2.085 3.09 ) ;
+      RECT ( 1.755 2.82 ) ( 1.835 2.99 ) ;
+      RECT ( 2.005 2.82 ) ( 2.085 2.99 ) ;
+      RECT ( 1.755 2.74 ) ( 2.085 2.82 ) ;
+      RECT ( 0.555 2.425 ) ( 0.885 2.505 ) ;
+      RECT ( 0.555 2.255 ) ( 0.635 2.425 ) ;
+      RECT ( 0.805 2.255 ) ( 0.885 2.425 ) ;
+      RECT ( 0.555 2.175 ) ( 0.885 2.255 ) ;
+      RECT ( 3.195 2.425 ) ( 3.525 2.505 ) ;
+      RECT ( 3.195 2.255 ) ( 3.275 2.425 ) ;
+      RECT ( 3.445 2.255 ) ( 3.525 2.425 ) ;
+      RECT ( 3.195 2.175 ) ( 3.525 2.255 ) ;
+      RECT ( 1.275 2.01 ) ( 1.605 2.09 ) ;
+      RECT ( 1.275 1.84 ) ( 1.355 2.01 ) ;
+      RECT ( 1.525 1.84 ) ( 1.605 2.01 ) ;
+      RECT ( 1.275 1.76 ) ( 1.605 1.84 ) ;
+      RECT ( 2.715 2.01 ) ( 3.025 2.09 ) ;
+      RECT ( 2.715 1.84 ) ( 2.795 2.01 ) ;
+      RECT ( 2.965 2.005 ) ( 3.025 2.01 ) ;
+      RECT ( 2.965 1.84 ) ( 3.045 2.005 ) ;
+      RECT ( 2.715 1.76 ) ( 3.045 1.84 ) ;
+      RECT ( 1.355 1.155 ) ( 1.525 1.76 ) ;
+      RECT ( 1.275 1.075 ) ( 1.605 1.155 ) ;
+      RECT ( 1.275 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.905 ) ( 1.605 1.075 ) ;
+      RECT ( 1.275 0.825 ) ( 1.605 0.905 ) ;
+      RECT ( 2.715 1.075 ) ( 3.045 1.155 ) ;
+      RECT ( 2.715 0.905 ) ( 2.795 1.075 ) ;
+      RECT ( 2.965 0.92 ) ( 3.045 1.075 ) ;
+      RECT ( 2.965 0.905 ) ( 3.025 0.92 ) ;
+      RECT ( 2.715 0.825 ) ( 3.025 0.905 ) ;
+      RECT ( 0.555 0.67 ) ( 0.885 0.75 ) ;
+      RECT ( 0.555 0.5 ) ( 0.635 0.67 ) ;
+      RECT ( 0.805 0.5 ) ( 0.885 0.67 ) ;
+      RECT ( 3.195 0.67 ) ( 3.525 0.75 ) ;
+      RECT ( 0.555 0.42 ) ( 0.885 0.5 ) ;
+      RECT ( 1.755 0.51 ) ( 2.085 0.59 ) ;
+      RECT ( 1.755 0.34 ) ( 1.835 0.51 ) ;
+      RECT ( 2.005 0.34 ) ( 2.085 0.51 ) ;
+      RECT ( 3.195 0.5 ) ( 3.275 0.67 ) ;
+      RECT ( 3.445 0.5 ) ( 3.525 0.67 ) ;
+      RECT ( 3.195 0.42 ) ( 3.525 0.5 ) ;
+      RECT ( 1.755 0.24 ) ( 2.085 0.34 ) ;
+      RECT ( 0 0.085 ) ( 4.32 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.32 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 4.32 -0.085 ) ;
     LAYER metal1 ;
-      RECT ( 0 3.42 ) ( 4.32 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.32 3.42 ) ;
-      RECT ( 0 3.09 ) ( 4.32 3.25 ) ;
-      RECT ( 1.78 2.99 ) ( 2.07 3.09 ) ;
-      RECT ( 1.78 2.82 ) ( 1.84 2.99 ) ;
-      RECT ( 2.01 2.82 ) ( 2.07 2.99 ) ;
-      RECT ( 1.78 2.76 ) ( 2.07 2.82 ) ;
-      RECT ( 0.58 2.43 ) ( 0.87 2.49 ) ;
-      RECT ( 0.58 2.26 ) ( 0.64 2.43 ) ;
-      RECT ( 0.81 2.26 ) ( 0.87 2.43 ) ;
-      RECT ( 0.58 2.2 ) ( 0.87 2.26 ) ;
-      RECT ( 3.22 2.43 ) ( 3.51 2.49 ) ;
-      RECT ( 3.22 2.26 ) ( 3.28 2.43 ) ;
-      RECT ( 3.45 2.26 ) ( 3.51 2.43 ) ;
-      RECT ( 3.22 2.2 ) ( 3.51 2.26 ) ;
-      RECT ( 0.65 1.06 ) ( 0.79 2.2 ) ;
-      RECT ( 1.3 2.01 ) ( 1.59 2.07 ) ;
-      RECT ( 1.3 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.59 2.01 ) ;
-      RECT ( 1.3 1.78 ) ( 1.59 1.84 ) ;
-      RECT ( 2.74 2.01 ) ( 3.03 2.07 ) ;
-      RECT ( 2.74 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.03 2.01 ) ;
-      RECT ( 2.74 1.78 ) ( 3.03 1.84 ) ;
-      RECT ( 1.37 1.54 ) ( 1.51 1.78 ) ;
-      RECT ( 1.3 1.48 ) ( 1.59 1.54 ) ;
-      RECT ( 1.3 1.31 ) ( 1.36 1.48 ) ;
-      RECT ( 1.53 1.31 ) ( 1.59 1.48 ) ;
-      RECT ( 1.3 1.25 ) ( 1.59 1.31 ) ;
-      RECT ( 2.81 1.14 ) ( 2.95 1.78 ) ;
-      RECT ( 2.74 1.08 ) ( 3.03 1.14 ) ;
-      RECT ( 2.74 1.06 ) ( 2.8 1.08 ) ;
-      RECT ( 0.65 0.92 ) ( 2.8 1.06 ) ;
-      RECT ( 0.65 0.73 ) ( 0.79 0.92 ) ;
-      RECT ( 2.74 0.91 ) ( 2.8 0.92 ) ;
-      RECT ( 2.97 0.91 ) ( 3.03 1.08 ) ;
-      RECT ( 2.74 0.85 ) ( 3.03 0.91 ) ;
-      RECT ( 3.29 0.73 ) ( 3.43 2.2 ) ;
-      RECT ( 0.58 0.67 ) ( 0.87 0.73 ) ;
-      RECT ( 0.58 0.5 ) ( 0.64 0.67 ) ;
-      RECT ( 0.81 0.5 ) ( 0.87 0.67 ) ;
-      RECT ( 3.22 0.67 ) ( 3.51 0.73 ) ;
-      RECT ( 0.58 0.44 ) ( 0.87 0.5 ) ;
-      RECT ( 1.78 0.51 ) ( 2.07 0.57 ) ;
-      RECT ( 1.78 0.34 ) ( 1.84 0.51 ) ;
-      RECT ( 2.01 0.34 ) ( 2.07 0.51 ) ;
-      RECT ( 3.22 0.5 ) ( 3.28 0.67 ) ;
-      RECT ( 3.45 0.5 ) ( 3.51 0.67 ) ;
-      RECT ( 3.22 0.44 ) ( 3.51 0.5 ) ;
-      RECT ( 1.78 0.24 ) ( 2.07 0.34 ) ;
-      RECT ( 0 0.09 ) ( 4.32 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.32 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 4.32 -0.09 ) ;
+      RECT ( 0 3.415 ) ( 4.32 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.32 3.415 ) ;
+      RECT ( 0 3.09 ) ( 4.32 3.245 ) ;
+      RECT ( 1.775 2.99 ) ( 2.065 3.09 ) ;
+      RECT ( 1.775 2.82 ) ( 1.835 2.99 ) ;
+      RECT ( 2.005 2.82 ) ( 2.065 2.99 ) ;
+      RECT ( 1.775 2.76 ) ( 2.065 2.82 ) ;
+      RECT ( 0.575 2.425 ) ( 0.865 2.485 ) ;
+      RECT ( 0.575 2.255 ) ( 0.635 2.425 ) ;
+      RECT ( 0.805 2.255 ) ( 0.865 2.425 ) ;
+      RECT ( 0.575 2.195 ) ( 0.865 2.255 ) ;
+      RECT ( 3.215 2.425 ) ( 3.505 2.485 ) ;
+      RECT ( 3.215 2.255 ) ( 3.275 2.425 ) ;
+      RECT ( 3.445 2.255 ) ( 3.505 2.425 ) ;
+      RECT ( 3.215 2.195 ) ( 3.505 2.255 ) ;
+      RECT ( 0.65 1.995 ) ( 0.79 2.195 ) ;
+      RECT ( 2.735 2.01 ) ( 3.025 2.07 ) ;
+      RECT ( 2.735 1.995 ) ( 2.795 2.01 ) ;
+      RECT ( 0.65 1.855 ) ( 2.795 1.995 ) ;
+      RECT ( 0.65 0.73 ) ( 0.79 1.855 ) ;
+      RECT ( 2.735 1.84 ) ( 2.795 1.855 ) ;
+      RECT ( 2.965 1.84 ) ( 3.025 2.01 ) ;
+      RECT ( 2.735 1.78 ) ( 3.025 1.84 ) ;
+      RECT ( 2.81 1.135 ) ( 2.95 1.78 ) ;
+      RECT ( 1.295 1.075 ) ( 1.585 1.135 ) ;
+      RECT ( 1.295 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.905 ) ( 1.585 1.075 ) ;
+      RECT ( 1.295 0.845 ) ( 1.585 0.905 ) ;
+      RECT ( 2.735 1.075 ) ( 3.025 1.135 ) ;
+      RECT ( 2.735 0.905 ) ( 2.795 1.075 ) ;
+      RECT ( 2.965 0.905 ) ( 3.025 1.075 ) ;
+      RECT ( 2.735 0.845 ) ( 3.025 0.905 ) ;
+      RECT ( 3.29 0.73 ) ( 3.43 2.195 ) ;
+      RECT ( 0.575 0.67 ) ( 0.865 0.73 ) ;
+      RECT ( 0.575 0.5 ) ( 0.635 0.67 ) ;
+      RECT ( 0.805 0.5 ) ( 0.865 0.67 ) ;
+      RECT ( 3.215 0.67 ) ( 3.505 0.73 ) ;
+      RECT ( 0.575 0.44 ) ( 0.865 0.5 ) ;
+      RECT ( 1.775 0.51 ) ( 2.065 0.57 ) ;
+      RECT ( 1.775 0.34 ) ( 1.835 0.51 ) ;
+      RECT ( 2.005 0.34 ) ( 2.065 0.51 ) ;
+      RECT ( 3.215 0.5 ) ( 3.275 0.67 ) ;
+      RECT ( 3.445 0.5 ) ( 3.505 0.67 ) ;
+      RECT ( 3.215 0.44 ) ( 3.505 0.5 ) ;
+      RECT ( 1.775 0.24 ) ( 2.065 0.34 ) ;
+      RECT ( 0 0.085 ) ( 4.32 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.32 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 4.32 -0.085 ) ;
 
   end
 END BUFX2
diff --git a/cells/lef/BUFX2.lef.temp b/cells/lef/BUFX2.lef.temp
index ac817d9..8f7177b 100644
--- a/cells/lef/BUFX2.lef.temp
+++ b/cells/lef/BUFX2.lef.temp
@@ -51,9 +51,7 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 1.29500000 1.25000000 1.58500000 1.54000000 ;
-        RECT 1.37000000 1.54000000 1.51000000 1.78000000 ;
-        RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
+        RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
     END
   END A
 
diff --git a/cells/lef/BUFX4.lef.beforemagic b/cells/lef/BUFX4.lef.beforemagic
index 183cfcc..7bfa072 100644
--- a/cells/lef/BUFX4.lef.beforemagic
+++ b/cells/lef/BUFX4.lef.beforemagic
@@ -64,192 +64,193 @@
 
   OBS
     LAYER locali ;
-      RECT ( 0 3.42 ) ( 5.76 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
-      RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
-      RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
-      RECT ( 5.61 3.25 ) ( 5.76 3.42 ) ;
-      RECT ( 0 3.09 ) ( 5.76 3.25 ) ;
-      RECT ( 1.76 2.99 ) ( 2.09 3.09 ) ;
-      RECT ( 1.76 2.82 ) ( 1.84 2.99 ) ;
-      RECT ( 2.01 2.82 ) ( 2.09 2.99 ) ;
-      RECT ( 1.76 2.74 ) ( 2.09 2.82 ) ;
-      RECT ( 4.64 2.99 ) ( 4.97 3.09 ) ;
-      RECT ( 4.64 2.82 ) ( 4.72 2.99 ) ;
-      RECT ( 4.89 2.82 ) ( 4.97 2.99 ) ;
-      RECT ( 4.64 2.74 ) ( 4.97 2.82 ) ;
-      RECT ( 0.56 2.43 ) ( 0.89 2.51 ) ;
-      RECT ( 0.56 2.26 ) ( 0.64 2.43 ) ;
-      RECT ( 0.81 2.26 ) ( 0.89 2.43 ) ;
-      RECT ( 0.56 2.18 ) ( 0.89 2.26 ) ;
-      RECT ( 3.68 2.43 ) ( 4.01 2.51 ) ;
-      RECT ( 3.68 2.26 ) ( 3.76 2.43 ) ;
-      RECT ( 3.93 2.26 ) ( 4.01 2.43 ) ;
-      RECT ( 3.68 2.18 ) ( 4.01 2.26 ) ;
-      RECT ( 1.28 2.01 ) ( 1.61 2.09 ) ;
-      RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
-      RECT ( 1.28 1.76 ) ( 1.61 1.84 ) ;
-      RECT ( 2.72 2.01 ) ( 3.05 2.09 ) ;
-      RECT ( 4.18 2.01 ) ( 4.49 2.09 ) ;
-      RECT ( 2.72 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.05 2.01 ) ;
-      RECT ( 2.72 1.76 ) ( 3.05 1.84 ) ;
-      RECT ( 4.16 1.84 ) ( 4.24 2.01 ) ;
-      RECT ( 4.41 1.84 ) ( 4.49 2.01 ) ;
-      RECT ( 4.16 1.76 ) ( 4.49 1.84 ) ;
-      RECT ( 1.36 1.16 ) ( 1.53 1.31 ) ;
-      RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
-      RECT ( 1.28 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
-      RECT ( 1.28 0.83 ) ( 1.61 0.91 ) ;
-      RECT ( 2.72 1.08 ) ( 3.05 1.16 ) ;
-      RECT ( 2.72 0.91 ) ( 2.8 1.08 ) ;
-      RECT ( 2.97 0.91 ) ( 3.05 1.08 ) ;
-      RECT ( 4.16 1.08 ) ( 4.49 1.16 ) ;
-      RECT ( 4.16 0.92 ) ( 4.24 1.08 ) ;
-      RECT ( 2.72 0.83 ) ( 3.05 0.91 ) ;
-      RECT ( 4.18 0.91 ) ( 4.24 0.92 ) ;
-      RECT ( 4.41 0.91 ) ( 4.49 1.08 ) ;
-      RECT ( 4.18 0.83 ) ( 4.49 0.91 ) ;
-      RECT ( 0.56 0.67 ) ( 0.89 0.75 ) ;
-      RECT ( 0.56 0.5 ) ( 0.64 0.67 ) ;
-      RECT ( 0.81 0.5 ) ( 0.89 0.67 ) ;
-      RECT ( 3.68 0.67 ) ( 4.01 0.75 ) ;
-      RECT ( 0.56 0.42 ) ( 0.89 0.5 ) ;
-      RECT ( 1.76 0.51 ) ( 2.09 0.59 ) ;
-      RECT ( 1.76 0.34 ) ( 1.84 0.51 ) ;
-      RECT ( 2.01 0.34 ) ( 2.09 0.51 ) ;
-      RECT ( 3.68 0.5 ) ( 3.76 0.67 ) ;
-      RECT ( 3.93 0.5 ) ( 4.01 0.67 ) ;
-      RECT ( 3.68 0.42 ) ( 4.01 0.5 ) ;
-      RECT ( 4.64 0.51 ) ( 4.97 0.59 ) ;
-      RECT ( 1.76 0.24 ) ( 2.09 0.34 ) ;
-      RECT ( 4.64 0.34 ) ( 4.72 0.51 ) ;
-      RECT ( 4.89 0.34 ) ( 4.97 0.51 ) ;
-      RECT ( 4.64 0.24 ) ( 4.97 0.34 ) ;
-      RECT ( 0 0.09 ) ( 5.76 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
-      RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
-      RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
-      RECT ( 5.61 -0.09 ) ( 5.76 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 5.76 -0.09 ) ;
+      RECT ( 0 3.415 ) ( 5.76 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.475 3.415 ) ;
+      RECT ( 4.645 3.245 ) ( 4.955 3.415 ) ;
+      RECT ( 5.125 3.245 ) ( 5.435 3.415 ) ;
+      RECT ( 5.605 3.245 ) ( 5.76 3.415 ) ;
+      RECT ( 0 3.09 ) ( 5.76 3.245 ) ;
+      RECT ( 1.755 2.99 ) ( 2.085 3.09 ) ;
+      RECT ( 1.755 2.82 ) ( 1.835 2.99 ) ;
+      RECT ( 2.005 2.82 ) ( 2.085 2.99 ) ;
+      RECT ( 1.755 2.74 ) ( 2.085 2.82 ) ;
+      RECT ( 4.635 2.99 ) ( 4.965 3.09 ) ;
+      RECT ( 4.635 2.82 ) ( 4.715 2.99 ) ;
+      RECT ( 4.885 2.82 ) ( 4.965 2.99 ) ;
+      RECT ( 4.635 2.74 ) ( 4.965 2.82 ) ;
+      RECT ( 0.555 2.425 ) ( 0.885 2.505 ) ;
+      RECT ( 0.555 2.255 ) ( 0.635 2.425 ) ;
+      RECT ( 0.805 2.255 ) ( 0.885 2.425 ) ;
+      RECT ( 0.555 2.175 ) ( 0.885 2.255 ) ;
+      RECT ( 3.675 2.425 ) ( 4.005 2.505 ) ;
+      RECT ( 3.675 2.255 ) ( 3.755 2.425 ) ;
+      RECT ( 3.925 2.255 ) ( 4.005 2.425 ) ;
+      RECT ( 3.675 2.175 ) ( 4.005 2.255 ) ;
+      RECT ( 1.275 2.01 ) ( 1.605 2.09 ) ;
+      RECT ( 1.275 1.84 ) ( 1.355 2.01 ) ;
+      RECT ( 1.525 1.84 ) ( 1.605 2.01 ) ;
+      RECT ( 1.275 1.76 ) ( 1.605 1.84 ) ;
+      RECT ( 2.715 2.01 ) ( 3.045 2.09 ) ;
+      RECT ( 2.715 1.84 ) ( 2.795 2.01 ) ;
+      RECT ( 2.965 1.84 ) ( 3.045 2.01 ) ;
+      RECT ( 4.175 2.01 ) ( 4.485 2.09 ) ;
+      RECT ( 4.175 2.005 ) ( 4.235 2.01 ) ;
+      RECT ( 2.715 1.76 ) ( 3.045 1.84 ) ;
+      RECT ( 4.155 1.84 ) ( 4.235 2.005 ) ;
+      RECT ( 4.405 1.84 ) ( 4.485 2.01 ) ;
+      RECT ( 4.155 1.76 ) ( 4.485 1.84 ) ;
+      RECT ( 1.355 1.155 ) ( 1.525 1.31 ) ;
+      RECT ( 1.275 1.075 ) ( 1.605 1.155 ) ;
+      RECT ( 1.275 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.905 ) ( 1.605 1.075 ) ;
+      RECT ( 1.275 0.825 ) ( 1.605 0.905 ) ;
+      RECT ( 2.715 1.075 ) ( 3.045 1.155 ) ;
+      RECT ( 2.715 0.905 ) ( 2.795 1.075 ) ;
+      RECT ( 2.965 0.905 ) ( 3.045 1.075 ) ;
+      RECT ( 4.155 1.075 ) ( 4.485 1.155 ) ;
+      RECT ( 4.155 0.92 ) ( 4.235 1.075 ) ;
+      RECT ( 2.715 0.825 ) ( 3.045 0.905 ) ;
+      RECT ( 4.175 0.905 ) ( 4.235 0.92 ) ;
+      RECT ( 4.405 0.905 ) ( 4.485 1.075 ) ;
+      RECT ( 4.175 0.825 ) ( 4.485 0.905 ) ;
+      RECT ( 0.555 0.67 ) ( 0.885 0.75 ) ;
+      RECT ( 0.555 0.5 ) ( 0.635 0.67 ) ;
+      RECT ( 0.805 0.5 ) ( 0.885 0.67 ) ;
+      RECT ( 3.675 0.67 ) ( 4.005 0.75 ) ;
+      RECT ( 0.555 0.42 ) ( 0.885 0.5 ) ;
+      RECT ( 1.755 0.51 ) ( 2.085 0.59 ) ;
+      RECT ( 1.755 0.34 ) ( 1.835 0.51 ) ;
+      RECT ( 2.005 0.34 ) ( 2.085 0.51 ) ;
+      RECT ( 3.675 0.5 ) ( 3.755 0.67 ) ;
+      RECT ( 3.925 0.5 ) ( 4.005 0.67 ) ;
+      RECT ( 3.675 0.42 ) ( 4.005 0.5 ) ;
+      RECT ( 4.635 0.51 ) ( 4.965 0.59 ) ;
+      RECT ( 1.755 0.24 ) ( 2.085 0.34 ) ;
+      RECT ( 4.635 0.34 ) ( 4.715 0.51 ) ;
+      RECT ( 4.885 0.34 ) ( 4.965 0.51 ) ;
+      RECT ( 4.635 0.24 ) ( 4.965 0.34 ) ;
+      RECT ( 0 0.085 ) ( 5.76 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.475 0.085 ) ;
+      RECT ( 4.645 -0.085 ) ( 4.955 0.085 ) ;
+      RECT ( 5.125 -0.085 ) ( 5.435 0.085 ) ;
+      RECT ( 5.605 -0.085 ) ( 5.76 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 5.76 -0.085 ) ;
     LAYER metal1 ;
-      RECT ( 0 3.42 ) ( 5.76 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
-      RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
-      RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
-      RECT ( 5.61 3.25 ) ( 5.76 3.42 ) ;
-      RECT ( 0 3.09 ) ( 5.76 3.25 ) ;
-      RECT ( 1.78 2.99 ) ( 2.07 3.09 ) ;
-      RECT ( 1.78 2.82 ) ( 1.84 2.99 ) ;
-      RECT ( 2.01 2.82 ) ( 2.07 2.99 ) ;
-      RECT ( 1.78 2.76 ) ( 2.07 2.82 ) ;
-      RECT ( 4.66 2.99 ) ( 4.95 3.09 ) ;
-      RECT ( 4.66 2.82 ) ( 4.72 2.99 ) ;
-      RECT ( 4.89 2.82 ) ( 4.95 2.99 ) ;
-      RECT ( 4.66 2.76 ) ( 4.95 2.82 ) ;
-      RECT ( 0.58 2.43 ) ( 0.87 2.49 ) ;
-      RECT ( 0.58 2.26 ) ( 0.64 2.43 ) ;
-      RECT ( 0.81 2.26 ) ( 0.87 2.43 ) ;
-      RECT ( 0.58 2.2 ) ( 0.87 2.26 ) ;
-      RECT ( 3.7 2.43 ) ( 3.99 2.49 ) ;
-      RECT ( 3.7 2.26 ) ( 3.76 2.43 ) ;
-      RECT ( 3.93 2.41 ) ( 3.99 2.43 ) ;
-      RECT ( 3.93 2.27 ) ( 4.87 2.41 ) ;
-      RECT ( 3.93 2.26 ) ( 3.99 2.27 ) ;
-      RECT ( 3.7 2.2 ) ( 3.99 2.26 ) ;
-      RECT ( 0.65 1.06 ) ( 0.79 2.2 ) ;
-      RECT ( 1.3 2.01 ) ( 1.59 2.07 ) ;
-      RECT ( 1.3 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.59 2.01 ) ;
-      RECT ( 1.3 1.78 ) ( 1.59 1.84 ) ;
-      RECT ( 2.74 2.01 ) ( 3.03 2.07 ) ;
-      RECT ( 2.74 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.03 2.01 ) ;
-      RECT ( 2.74 1.78 ) ( 3.03 1.84 ) ;
-      RECT ( 4.18 2.01 ) ( 4.47 2.07 ) ;
-      RECT ( 4.18 1.84 ) ( 4.24 2.01 ) ;
-      RECT ( 4.41 1.84 ) ( 4.47 2.01 ) ;
-      RECT ( 4.18 1.78 ) ( 4.47 1.84 ) ;
+      RECT ( 0 3.415 ) ( 5.76 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.475 3.415 ) ;
+      RECT ( 4.645 3.245 ) ( 4.955 3.415 ) ;
+      RECT ( 5.125 3.245 ) ( 5.435 3.415 ) ;
+      RECT ( 5.605 3.245 ) ( 5.76 3.415 ) ;
+      RECT ( 0 3.09 ) ( 5.76 3.245 ) ;
+      RECT ( 1.775 2.99 ) ( 2.065 3.09 ) ;
+      RECT ( 1.775 2.82 ) ( 1.835 2.99 ) ;
+      RECT ( 2.005 2.82 ) ( 2.065 2.99 ) ;
+      RECT ( 1.775 2.76 ) ( 2.065 2.82 ) ;
+      RECT ( 4.655 2.99 ) ( 4.945 3.09 ) ;
+      RECT ( 4.655 2.82 ) ( 4.715 2.99 ) ;
+      RECT ( 4.885 2.82 ) ( 4.945 2.99 ) ;
+      RECT ( 4.655 2.76 ) ( 4.945 2.82 ) ;
+      RECT ( 0.575 2.425 ) ( 0.865 2.485 ) ;
+      RECT ( 0.575 2.255 ) ( 0.635 2.425 ) ;
+      RECT ( 0.805 2.255 ) ( 0.865 2.425 ) ;
+      RECT ( 0.575 2.195 ) ( 0.865 2.255 ) ;
+      RECT ( 3.695 2.425 ) ( 3.985 2.485 ) ;
+      RECT ( 3.695 2.255 ) ( 3.755 2.425 ) ;
+      RECT ( 3.925 2.41 ) ( 3.985 2.425 ) ;
+      RECT ( 3.925 2.27 ) ( 4.87 2.41 ) ;
+      RECT ( 3.925 2.255 ) ( 3.985 2.27 ) ;
+      RECT ( 3.695 2.195 ) ( 3.985 2.255 ) ;
+      RECT ( 0.65 1.06 ) ( 0.79 2.195 ) ;
+      RECT ( 1.295 2.01 ) ( 1.585 2.07 ) ;
+      RECT ( 1.295 1.84 ) ( 1.355 2.01 ) ;
+      RECT ( 1.525 1.84 ) ( 1.585 2.01 ) ;
+      RECT ( 1.295 1.78 ) ( 1.585 1.84 ) ;
+      RECT ( 2.735 2.01 ) ( 3.025 2.07 ) ;
+      RECT ( 2.735 1.84 ) ( 2.795 2.01 ) ;
+      RECT ( 2.965 1.84 ) ( 3.025 2.01 ) ;
+      RECT ( 2.735 1.78 ) ( 3.025 1.84 ) ;
+      RECT ( 4.175 2.01 ) ( 4.465 2.07 ) ;
+      RECT ( 4.175 1.84 ) ( 4.235 2.01 ) ;
+      RECT ( 4.405 1.84 ) ( 4.465 2.01 ) ;
+      RECT ( 4.175 1.78 ) ( 4.465 1.84 ) ;
       RECT ( 1.37 1.54 ) ( 1.51 1.78 ) ;
-      RECT ( 1.3 1.48 ) ( 1.59 1.54 ) ;
-      RECT ( 1.3 1.31 ) ( 1.36 1.48 ) ;
-      RECT ( 1.53 1.31 ) ( 1.59 1.48 ) ;
-      RECT ( 1.3 1.25 ) ( 1.59 1.31 ) ;
-      RECT ( 2.81 1.14 ) ( 2.95 1.78 ) ;
-      RECT ( 4.25 1.14 ) ( 4.39 1.78 ) ;
-      RECT ( 2.74 1.08 ) ( 3.03 1.14 ) ;
-      RECT ( 2.74 1.06 ) ( 2.8 1.08 ) ;
-      RECT ( 0.65 0.92 ) ( 2.8 1.06 ) ;
+      RECT ( 1.295 1.48 ) ( 1.585 1.54 ) ;
+      RECT ( 1.295 1.31 ) ( 1.355 1.48 ) ;
+      RECT ( 1.525 1.31 ) ( 1.585 1.48 ) ;
+      RECT ( 1.295 1.25 ) ( 1.585 1.31 ) ;
+      RECT ( 2.81 1.135 ) ( 2.95 1.78 ) ;
+      RECT ( 4.25 1.135 ) ( 4.39 1.78 ) ;
+      RECT ( 2.735 1.075 ) ( 3.025 1.135 ) ;
+      RECT ( 2.735 1.06 ) ( 2.795 1.075 ) ;
+      RECT ( 0.65 0.92 ) ( 2.795 1.06 ) ;
       RECT ( 0.65 0.73 ) ( 0.79 0.92 ) ;
-      RECT ( 2.74 0.91 ) ( 2.8 0.92 ) ;
-      RECT ( 2.97 1.06 ) ( 3.03 1.08 ) ;
-      RECT ( 4.18 1.08 ) ( 4.47 1.14 ) ;
-      RECT ( 4.18 1.06 ) ( 4.24 1.08 ) ;
-      RECT ( 2.97 0.92 ) ( 4.24 1.06 ) ;
-      RECT ( 2.97 0.91 ) ( 3.03 0.92 ) ;
-      RECT ( 2.74 0.85 ) ( 3.03 0.91 ) ;
-      RECT ( 4.18 0.91 ) ( 4.24 0.92 ) ;
-      RECT ( 4.41 0.91 ) ( 4.47 1.08 ) ;
-      RECT ( 4.18 0.85 ) ( 4.47 0.91 ) ;
-      RECT ( 0.58 0.67 ) ( 0.87 0.73 ) ;
-      RECT ( 0.58 0.5 ) ( 0.64 0.67 ) ;
-      RECT ( 0.81 0.5 ) ( 0.87 0.67 ) ;
-      RECT ( 3.7 0.67 ) ( 3.99 0.73 ) ;
-      RECT ( 0.58 0.44 ) ( 0.87 0.5 ) ;
-      RECT ( 1.78 0.51 ) ( 2.07 0.57 ) ;
-      RECT ( 1.78 0.34 ) ( 1.84 0.51 ) ;
-      RECT ( 2.01 0.34 ) ( 2.07 0.51 ) ;
-      RECT ( 3.7 0.5 ) ( 3.76 0.67 ) ;
-      RECT ( 3.93 0.66 ) ( 3.99 0.67 ) ;
-      RECT ( 4.73 0.66 ) ( 4.87 2.27 ) ;
-      RECT ( 3.93 0.52 ) ( 4.87 0.66 ) ;
-      RECT ( 3.93 0.5 ) ( 3.99 0.52 ) ;
-      RECT ( 3.7 0.44 ) ( 3.99 0.5 ) ;
-      RECT ( 1.78 0.24 ) ( 2.07 0.34 ) ;
-      RECT ( 0 0.09 ) ( 5.76 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
-      RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
-      RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
-      RECT ( 5.61 -0.09 ) ( 5.76 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 5.76 -0.09 ) ;
+      RECT ( 2.735 0.905 ) ( 2.795 0.92 ) ;
+      RECT ( 2.965 1.06 ) ( 3.025 1.075 ) ;
+      RECT ( 4.175 1.075 ) ( 4.465 1.135 ) ;
+      RECT ( 4.175 1.06 ) ( 4.235 1.075 ) ;
+      RECT ( 2.965 0.92 ) ( 4.235 1.06 ) ;
+      RECT ( 2.965 0.905 ) ( 3.025 0.92 ) ;
+      RECT ( 2.735 0.845 ) ( 3.025 0.905 ) ;
+      RECT ( 4.175 0.905 ) ( 4.235 0.92 ) ;
+      RECT ( 4.405 0.905 ) ( 4.465 1.075 ) ;
+      RECT ( 4.175 0.845 ) ( 4.465 0.905 ) ;
+      RECT ( 0.575 0.67 ) ( 0.865 0.73 ) ;
+      RECT ( 0.575 0.5 ) ( 0.635 0.67 ) ;
+      RECT ( 0.805 0.5 ) ( 0.865 0.67 ) ;
+      RECT ( 3.695 0.67 ) ( 3.985 0.73 ) ;
+      RECT ( 0.575 0.44 ) ( 0.865 0.5 ) ;
+      RECT ( 1.775 0.51 ) ( 2.065 0.57 ) ;
+      RECT ( 1.775 0.34 ) ( 1.835 0.51 ) ;
+      RECT ( 2.005 0.34 ) ( 2.065 0.51 ) ;
+      RECT ( 3.695 0.5 ) ( 3.755 0.67 ) ;
+      RECT ( 3.925 0.655 ) ( 3.985 0.67 ) ;
+      RECT ( 4.73 0.655 ) ( 4.87 2.27 ) ;
+      RECT ( 3.925 0.515 ) ( 4.87 0.655 ) ;
+      RECT ( 3.925 0.5 ) ( 3.985 0.515 ) ;
+      RECT ( 3.695 0.44 ) ( 3.985 0.5 ) ;
+      RECT ( 1.775 0.24 ) ( 2.065 0.34 ) ;
+      RECT ( 0 0.085 ) ( 5.76 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.475 0.085 ) ;
+      RECT ( 4.645 -0.085 ) ( 4.955 0.085 ) ;
+      RECT ( 5.125 -0.085 ) ( 5.435 0.085 ) ;
+      RECT ( 5.605 -0.085 ) ( 5.76 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 5.76 -0.085 ) ;
 
   end
 END BUFX4
diff --git a/cells/lef/CLKBUF1.lef b/cells/lef/CLKBUF1.lef
index fd2c8f7..529278a 100644
--- a/cells/lef/CLKBUF1.lef
+++ b/cells/lef/CLKBUF1.lef
@@ -121,9 +121,7 @@
     SHAPE ABUTMENT ;
     PORT
       LAYER met1 ;
-        RECT 10.420 2.200 10.710 2.490 ;
-        RECT 10.490 1.540 10.630 2.200 ;
-        RECT 10.420 1.250 10.710 1.540 ;
+        RECT 10.420 0.440 10.710 0.730 ;
     END
   END Y
   PIN A
@@ -138,6 +136,8 @@
         RECT 1.300 1.780 1.590 2.070 ;
         RECT 2.740 1.780 3.030 2.070 ;
         RECT 1.370 1.140 1.510 1.780 ;
+        RECT 2.810 1.540 2.950 1.780 ;
+        RECT 2.740 1.250 3.030 1.540 ;
         RECT 1.300 0.850 1.590 1.140 ;
     END
   END A
@@ -151,13 +151,15 @@
         RECT 4.890 2.260 4.970 2.430 ;
         RECT 1.780 2.180 2.090 2.260 ;
         RECT 4.660 2.180 4.970 2.260 ;
+        RECT 5.680 2.090 5.850 2.660 ;
         RECT 7.520 2.430 7.850 2.510 ;
         RECT 7.520 2.260 7.600 2.430 ;
         RECT 7.770 2.260 7.850 2.430 ;
+        RECT 7.520 2.180 7.850 2.260 ;
+        RECT 8.560 2.090 8.730 2.660 ;
         RECT 10.400 2.430 10.730 2.510 ;
         RECT 10.400 2.260 10.480 2.430 ;
         RECT 10.650 2.260 10.730 2.430 ;
-        RECT 7.520 2.180 7.850 2.260 ;
         RECT 10.420 2.180 10.730 2.260 ;
         RECT 1.280 2.010 1.610 2.090 ;
         RECT 1.280 1.840 1.360 2.010 ;
@@ -187,13 +189,9 @@
         RECT 9.920 1.840 10.000 2.010 ;
         RECT 10.170 1.840 10.250 2.010 ;
         RECT 9.920 1.760 10.250 1.840 ;
-        RECT 11.360 2.010 11.690 2.090 ;
-        RECT 11.360 1.840 11.440 2.010 ;
-        RECT 11.610 1.840 11.690 2.010 ;
-        RECT 11.360 1.760 11.690 1.840 ;
-        RECT 2.800 1.160 2.970 1.760 ;
-        RECT 5.680 1.160 5.850 1.760 ;
-        RECT 8.560 1.160 8.730 1.760 ;
+        RECT 5.680 1.620 5.850 1.760 ;
+        RECT 8.560 1.620 8.730 1.760 ;
+        RECT 2.800 1.160 2.970 1.310 ;
         RECT 1.280 1.080 1.610 1.160 ;
         RECT 1.280 0.910 1.360 1.080 ;
         RECT 1.530 0.910 1.610 1.080 ;
@@ -225,7 +223,11 @@
         RECT 10.170 0.920 10.250 1.080 ;
         RECT 10.170 0.910 10.230 0.920 ;
         RECT 9.920 0.830 10.230 0.910 ;
-        RECT 10.480 0.750 10.650 1.310 ;
+        RECT 10.480 0.750 10.650 2.180 ;
+        RECT 11.360 2.010 11.690 2.090 ;
+        RECT 11.360 1.840 11.440 2.010 ;
+        RECT 11.610 1.840 11.690 2.010 ;
+        RECT 11.360 1.760 11.690 1.840 ;
         RECT 11.360 1.080 11.690 1.160 ;
         RECT 11.360 0.910 11.440 1.080 ;
         RECT 11.610 0.910 11.690 1.080 ;
@@ -248,13 +250,21 @@
         RECT 10.650 0.500 10.730 0.670 ;
         RECT 10.400 0.420 10.730 0.500 ;
       LAYER met1 ;
-        RECT 4.250 2.680 5.830 2.820 ;
+        RECT 5.620 2.830 5.910 2.890 ;
+        RECT 5.620 2.820 5.680 2.830 ;
+        RECT 4.250 2.680 5.680 2.820 ;
         RECT 1.780 2.430 2.070 2.490 ;
         RECT 1.780 2.260 1.840 2.430 ;
         RECT 2.010 2.260 2.070 2.430 ;
         RECT 1.780 2.200 2.070 2.260 ;
         RECT 1.850 1.060 1.990 2.200 ;
         RECT 4.250 2.070 4.390 2.680 ;
+        RECT 5.620 2.660 5.680 2.680 ;
+        RECT 5.850 2.660 5.910 2.830 ;
+        RECT 8.500 2.830 8.790 2.890 ;
+        RECT 8.500 2.820 8.560 2.830 ;
+        RECT 5.620 2.600 5.910 2.660 ;
+        RECT 7.130 2.680 8.560 2.820 ;
         RECT 4.660 2.430 4.950 2.490 ;
         RECT 4.660 2.260 4.720 2.430 ;
         RECT 4.890 2.260 4.950 2.430 ;
@@ -263,6 +273,18 @@
         RECT 4.180 1.840 4.240 2.010 ;
         RECT 4.410 1.840 4.470 2.010 ;
         RECT 4.180 1.780 4.470 1.840 ;
+        RECT 4.730 2.000 4.870 2.200 ;
+        RECT 7.130 2.070 7.270 2.680 ;
+        RECT 8.500 2.660 8.560 2.680 ;
+        RECT 8.730 2.660 8.790 2.830 ;
+        RECT 8.500 2.600 8.790 2.660 ;
+        RECT 7.540 2.430 7.830 2.490 ;
+        RECT 7.540 2.260 7.600 2.430 ;
+        RECT 7.770 2.260 7.830 2.430 ;
+        RECT 7.540 2.200 7.830 2.260 ;
+        RECT 7.060 2.010 7.350 2.070 ;
+        RECT 7.060 2.000 7.120 2.010 ;
+        RECT 4.730 1.860 7.120 2.000 ;
         RECT 4.250 1.140 4.390 1.780 ;
         RECT 4.180 1.080 4.470 1.140 ;
         RECT 4.180 1.060 4.240 1.080 ;
@@ -271,58 +293,56 @@
         RECT 4.180 0.910 4.240 0.920 ;
         RECT 4.410 0.910 4.470 1.080 ;
         RECT 4.180 0.850 4.470 0.910 ;
-        RECT 4.730 1.060 4.870 2.200 ;
-        RECT 5.690 2.070 5.830 2.680 ;
-        RECT 7.130 2.680 8.710 2.820 ;
-        RECT 7.130 2.070 7.270 2.680 ;
-        RECT 7.540 2.430 7.830 2.490 ;
-        RECT 7.540 2.260 7.600 2.430 ;
-        RECT 7.770 2.260 7.830 2.430 ;
-        RECT 7.540 2.200 7.830 2.260 ;
-        RECT 5.620 2.010 5.910 2.070 ;
-        RECT 5.620 1.840 5.680 2.010 ;
-        RECT 5.850 1.840 5.910 2.010 ;
-        RECT 5.620 1.780 5.910 1.840 ;
-        RECT 7.060 2.010 7.350 2.070 ;
-        RECT 7.060 1.840 7.120 2.010 ;
+        RECT 4.730 0.730 4.870 1.860 ;
+        RECT 7.060 1.840 7.120 1.860 ;
         RECT 7.290 1.840 7.350 2.010 ;
         RECT 7.060 1.780 7.350 1.840 ;
+        RECT 7.610 2.000 7.750 2.200 ;
+        RECT 9.940 2.010 10.230 2.070 ;
+        RECT 9.940 2.000 10.000 2.010 ;
+        RECT 7.610 1.860 10.000 2.000 ;
+        RECT 5.620 1.620 5.910 1.680 ;
+        RECT 5.620 1.450 5.680 1.620 ;
+        RECT 5.850 1.450 5.910 1.620 ;
+        RECT 5.620 1.390 5.910 1.450 ;
+        RECT 5.690 1.140 5.830 1.390 ;
         RECT 7.130 1.140 7.270 1.780 ;
+        RECT 5.620 1.080 5.910 1.140 ;
+        RECT 5.620 0.910 5.680 1.080 ;
+        RECT 5.850 0.910 5.910 1.080 ;
+        RECT 5.620 0.850 5.910 0.910 ;
         RECT 7.060 1.080 7.350 1.140 ;
-        RECT 7.060 1.060 7.120 1.080 ;
-        RECT 4.730 0.920 7.120 1.060 ;
-        RECT 4.730 0.730 4.870 0.920 ;
-        RECT 7.060 0.910 7.120 0.920 ;
+        RECT 7.060 0.910 7.120 1.080 ;
         RECT 7.290 0.910 7.350 1.080 ;
         RECT 7.060 0.850 7.350 0.910 ;
-        RECT 7.610 1.060 7.750 2.200 ;
-        RECT 8.570 2.070 8.710 2.680 ;
-        RECT 8.500 2.010 8.790 2.070 ;
-        RECT 8.500 1.840 8.560 2.010 ;
-        RECT 8.730 1.840 8.790 2.010 ;
-        RECT 8.500 1.780 8.790 1.840 ;
-        RECT 9.940 2.010 10.230 2.070 ;
-        RECT 9.940 1.840 10.000 2.010 ;
-        RECT 10.170 1.840 10.230 2.010 ;
-        RECT 9.940 1.780 10.230 1.840 ;
+        RECT 7.610 0.730 7.750 1.860 ;
+        RECT 9.940 1.840 10.000 1.860 ;
+        RECT 10.170 2.000 10.230 2.010 ;
         RECT 11.380 2.010 11.670 2.070 ;
-        RECT 11.380 1.840 11.440 2.010 ;
+        RECT 11.380 2.000 11.440 2.010 ;
+        RECT 10.170 1.860 11.440 2.000 ;
+        RECT 10.170 1.840 10.230 1.860 ;
+        RECT 9.940 1.780 10.230 1.840 ;
+        RECT 11.380 1.840 11.440 1.860 ;
         RECT 11.610 1.840 11.670 2.010 ;
         RECT 11.380 1.780 11.670 1.840 ;
+        RECT 8.500 1.620 8.790 1.680 ;
+        RECT 8.500 1.450 8.560 1.620 ;
+        RECT 8.730 1.450 8.790 1.620 ;
+        RECT 8.500 1.390 8.790 1.450 ;
+        RECT 8.570 1.140 8.710 1.390 ;
         RECT 10.010 1.140 10.150 1.780 ;
         RECT 11.450 1.140 11.590 1.780 ;
+        RECT 8.500 1.080 8.790 1.140 ;
+        RECT 8.500 0.910 8.560 1.080 ;
+        RECT 8.730 0.910 8.790 1.080 ;
+        RECT 8.500 0.850 8.790 0.910 ;
         RECT 9.940 1.080 10.230 1.140 ;
-        RECT 9.940 1.060 10.000 1.080 ;
-        RECT 7.610 0.920 10.000 1.060 ;
-        RECT 7.610 0.730 7.750 0.920 ;
-        RECT 9.940 0.910 10.000 0.920 ;
-        RECT 10.170 1.060 10.230 1.080 ;
-        RECT 11.380 1.080 11.670 1.140 ;
-        RECT 11.380 1.060 11.440 1.080 ;
-        RECT 10.170 0.920 11.440 1.060 ;
-        RECT 10.170 0.910 10.230 0.920 ;
+        RECT 9.940 0.910 10.000 1.080 ;
+        RECT 10.170 0.910 10.230 1.080 ;
         RECT 9.940 0.850 10.230 0.910 ;
-        RECT 11.380 0.910 11.440 0.920 ;
+        RECT 11.380 1.080 11.670 1.140 ;
+        RECT 11.380 0.910 11.440 1.080 ;
         RECT 11.610 0.910 11.670 1.080 ;
         RECT 11.380 0.850 11.670 0.910 ;
         RECT 1.780 0.670 2.070 0.730 ;
diff --git a/cells/lef/CLKBUF1.lef.beforemagic b/cells/lef/CLKBUF1.lef.beforemagic
index 00750d0..33f4e8e 100644
--- a/cells/lef/CLKBUF1.lef.beforemagic
+++ b/cells/lef/CLKBUF1.lef.beforemagic
@@ -38,9 +38,7 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 10.41500000 1.25000000 10.70500000 1.54000000 ;
-        RECT 10.49000000 1.54000000 10.63000000 2.19500000 ;
-        RECT 10.41500000 2.19500000 10.70500000 2.48500000 ;
+        RECT 10.41500000 0.44000000 10.70500000 0.73000000 ;
     END
   END Y
 
@@ -52,7 +50,9 @@
      CLASS CORE ;
        LAYER met1 ;
         RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
+        RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
         RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
+        RECT 2.81000000 1.54000000 2.95000000 1.78000000 ;
         RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
         RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
         RECT 1.37000000 2.07000000 1.51000000 2.67500000 ;
@@ -64,425 +64,449 @@
 
   OBS
     LAYER locali ;
-      RECT ( 0 3.42 ) ( 12.96 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
-      RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
-      RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
-      RECT ( 5.61 3.25 ) ( 5.92 3.42 ) ;
-      RECT ( 6.09 3.25 ) ( 6.4 3.42 ) ;
-      RECT ( 6.57 3.25 ) ( 6.88 3.42 ) ;
-      RECT ( 7.05 3.25 ) ( 7.36 3.42 ) ;
-      RECT ( 7.53 3.25 ) ( 7.84 3.42 ) ;
-      RECT ( 8.01 3.25 ) ( 8.32 3.42 ) ;
-      RECT ( 8.49 3.25 ) ( 8.8 3.42 ) ;
-      RECT ( 8.97 3.25 ) ( 9.28 3.42 ) ;
-      RECT ( 9.45 3.25 ) ( 9.76 3.42 ) ;
-      RECT ( 9.93 3.25 ) ( 10.24 3.42 ) ;
-      RECT ( 10.41 3.25 ) ( 10.72 3.42 ) ;
-      RECT ( 10.89 3.25 ) ( 11.2 3.42 ) ;
-      RECT ( 11.37 3.25 ) ( 11.68 3.42 ) ;
-      RECT ( 11.85 3.25 ) ( 12.16 3.42 ) ;
-      RECT ( 12.33 3.25 ) ( 12.64 3.42 ) ;
-      RECT ( 12.81 3.25 ) ( 12.96 3.42 ) ;
-      RECT ( 0 3.09 ) ( 12.96 3.25 ) ;
-      RECT ( 0.56 2.99 ) ( 0.89 3.09 ) ;
-      RECT ( 0.56 2.82 ) ( 0.64 2.99 ) ;
-      RECT ( 0.81 2.82 ) ( 0.89 2.99 ) ;
-      RECT ( 0.56 2.74 ) ( 0.89 2.82 ) ;
-      RECT ( 3.2 2.99 ) ( 3.53 3.09 ) ;
-      RECT ( 3.2 2.82 ) ( 3.28 2.99 ) ;
-      RECT ( 3.45 2.82 ) ( 3.53 2.99 ) ;
-      RECT ( 3.2 2.74 ) ( 3.53 2.82 ) ;
-      RECT ( 6.08 2.99 ) ( 6.41 3.09 ) ;
-      RECT ( 6.08 2.82 ) ( 6.16 2.99 ) ;
-      RECT ( 6.33 2.82 ) ( 6.41 2.99 ) ;
-      RECT ( 6.08 2.74 ) ( 6.41 2.82 ) ;
-      RECT ( 8.96 2.99 ) ( 9.29 3.09 ) ;
-      RECT ( 8.96 2.82 ) ( 9.04 2.99 ) ;
-      RECT ( 9.21 2.82 ) ( 9.29 2.99 ) ;
-      RECT ( 8.96 2.74 ) ( 9.29 2.82 ) ;
-      RECT ( 11.84 2.99 ) ( 12.17 3.09 ) ;
-      RECT ( 11.84 2.82 ) ( 11.92 2.99 ) ;
-      RECT ( 12.09 2.82 ) ( 12.17 2.99 ) ;
-      RECT ( 11.84 2.74 ) ( 12.17 2.82 ) ;
-      RECT ( 1.76 2.43 ) ( 2.09 2.51 ) ;
-      RECT ( 1.76 2.26 ) ( 1.84 2.43 ) ;
-      RECT ( 2.01 2.26 ) ( 2.09 2.43 ) ;
-      RECT ( 4.64 2.43 ) ( 4.97 2.51 ) ;
-      RECT ( 4.64 2.26 ) ( 4.72 2.43 ) ;
-      RECT ( 4.89 2.26 ) ( 4.97 2.43 ) ;
-      RECT ( 1.78 2.18 ) ( 2.09 2.26 ) ;
-      RECT ( 4.66 2.18 ) ( 4.97 2.26 ) ;
-      RECT ( 7.52 2.43 ) ( 7.85 2.51 ) ;
-      RECT ( 7.52 2.26 ) ( 7.6 2.43 ) ;
-      RECT ( 7.77 2.26 ) ( 7.85 2.43 ) ;
-      RECT ( 10.4 2.43 ) ( 10.73 2.51 ) ;
-      RECT ( 10.4 2.26 ) ( 10.48 2.43 ) ;
-      RECT ( 10.65 2.26 ) ( 10.73 2.43 ) ;
-      RECT ( 7.52 2.18 ) ( 7.85 2.26 ) ;
-      RECT ( 10.42 2.18 ) ( 10.73 2.26 ) ;
-      RECT ( 1.28 2.01 ) ( 1.61 2.09 ) ;
-      RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
-      RECT ( 1.28 1.76 ) ( 1.61 1.84 ) ;
-      RECT ( 2.72 2.01 ) ( 3.05 2.09 ) ;
-      RECT ( 2.72 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.05 2.01 ) ;
-      RECT ( 2.72 1.76 ) ( 3.05 1.84 ) ;
-      RECT ( 4.16 2.01 ) ( 4.49 2.09 ) ;
-      RECT ( 4.16 1.84 ) ( 4.24 2.01 ) ;
-      RECT ( 4.41 1.84 ) ( 4.49 2.01 ) ;
-      RECT ( 4.16 1.76 ) ( 4.49 1.84 ) ;
-      RECT ( 5.6 2.01 ) ( 5.93 2.09 ) ;
-      RECT ( 5.6 1.84 ) ( 5.68 2.01 ) ;
-      RECT ( 5.85 1.84 ) ( 5.93 2.01 ) ;
-      RECT ( 5.6 1.76 ) ( 5.93 1.84 ) ;
-      RECT ( 7.04 2.01 ) ( 7.35 2.09 ) ;
-      RECT ( 8.48 2.01 ) ( 8.81 2.09 ) ;
-      RECT ( 7.04 1.84 ) ( 7.12 2.01 ) ;
-      RECT ( 7.29 1.84 ) ( 7.37 2.01 ) ;
-      RECT ( 7.04 1.76 ) ( 7.37 1.84 ) ;
-      RECT ( 8.48 1.84 ) ( 8.56 2.01 ) ;
-      RECT ( 8.73 1.84 ) ( 8.81 2.01 ) ;
-      RECT ( 8.48 1.76 ) ( 8.81 1.84 ) ;
-      RECT ( 9.92 2.01 ) ( 10.25 2.09 ) ;
-      RECT ( 9.92 1.84 ) ( 10 2.01 ) ;
-      RECT ( 10.17 1.84 ) ( 10.25 2.01 ) ;
-      RECT ( 9.92 1.76 ) ( 10.25 1.84 ) ;
-      RECT ( 11.36 2.01 ) ( 11.69 2.09 ) ;
-      RECT ( 11.36 1.84 ) ( 11.44 2.01 ) ;
-      RECT ( 11.61 1.84 ) ( 11.69 2.01 ) ;
-      RECT ( 11.36 1.76 ) ( 11.69 1.84 ) ;
-      RECT ( 2.8 1.16 ) ( 2.97 1.76 ) ;
-      RECT ( 5.68 1.16 ) ( 5.85 1.76 ) ;
-      RECT ( 8.56 1.16 ) ( 8.73 1.76 ) ;
-      RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
-      RECT ( 1.28 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
-      RECT ( 1.28 0.83 ) ( 1.61 0.91 ) ;
-      RECT ( 2.72 1.08 ) ( 3.05 1.16 ) ;
-      RECT ( 2.72 0.91 ) ( 2.8 1.08 ) ;
-      RECT ( 2.97 0.91 ) ( 3.05 1.08 ) ;
-      RECT ( 2.72 0.83 ) ( 3.05 0.91 ) ;
-      RECT ( 4.16 1.08 ) ( 4.49 1.16 ) ;
-      RECT ( 4.16 0.91 ) ( 4.24 1.08 ) ;
-      RECT ( 4.41 0.92 ) ( 4.49 1.08 ) ;
-      RECT ( 5.6 1.08 ) ( 5.93 1.16 ) ;
-      RECT ( 4.41 0.91 ) ( 4.47 0.92 ) ;
-      RECT ( 4.16 0.83 ) ( 4.47 0.91 ) ;
-      RECT ( 5.6 0.91 ) ( 5.68 1.08 ) ;
-      RECT ( 5.85 0.91 ) ( 5.93 1.08 ) ;
-      RECT ( 5.6 0.83 ) ( 5.93 0.91 ) ;
-      RECT ( 7.04 1.08 ) ( 7.37 1.16 ) ;
-      RECT ( 7.04 0.91 ) ( 7.12 1.08 ) ;
-      RECT ( 7.29 0.92 ) ( 7.37 1.08 ) ;
-      RECT ( 8.48 1.08 ) ( 8.81 1.16 ) ;
-      RECT ( 7.29 0.91 ) ( 7.35 0.92 ) ;
-      RECT ( 7.04 0.83 ) ( 7.35 0.91 ) ;
-      RECT ( 8.48 0.91 ) ( 8.56 1.08 ) ;
-      RECT ( 8.73 0.91 ) ( 8.81 1.08 ) ;
-      RECT ( 8.48 0.83 ) ( 8.81 0.91 ) ;
-      RECT ( 9.92 1.08 ) ( 10.25 1.16 ) ;
-      RECT ( 9.92 0.91 ) ( 10 1.08 ) ;
-      RECT ( 10.17 0.92 ) ( 10.25 1.08 ) ;
-      RECT ( 10.17 0.91 ) ( 10.23 0.92 ) ;
-      RECT ( 9.92 0.83 ) ( 10.23 0.91 ) ;
-      RECT ( 10.48 0.75 ) ( 10.65 1.31 ) ;
-      RECT ( 11.36 1.08 ) ( 11.69 1.16 ) ;
-      RECT ( 11.36 0.91 ) ( 11.44 1.08 ) ;
-      RECT ( 11.61 0.91 ) ( 11.69 1.08 ) ;
-      RECT ( 11.36 0.83 ) ( 11.69 0.91 ) ;
-      RECT ( 1.78 0.67 ) ( 2.09 0.75 ) ;
-      RECT ( 1.78 0.66 ) ( 1.84 0.67 ) ;
-      RECT ( 0.56 0.51 ) ( 0.89 0.59 ) ;
-      RECT ( 0.56 0.34 ) ( 0.64 0.51 ) ;
-      RECT ( 0.81 0.34 ) ( 0.89 0.51 ) ;
-      RECT ( 1.76 0.5 ) ( 1.84 0.66 ) ;
-      RECT ( 2.01 0.5 ) ( 2.09 0.67 ) ;
-      RECT ( 4.64 0.67 ) ( 4.97 0.75 ) ;
-      RECT ( 1.76 0.42 ) ( 2.09 0.5 ) ;
-      RECT ( 3.2 0.51 ) ( 3.53 0.59 ) ;
-      RECT ( 0.56 0.24 ) ( 0.89 0.34 ) ;
-      RECT ( 3.2 0.34 ) ( 3.28 0.51 ) ;
-      RECT ( 3.45 0.34 ) ( 3.53 0.51 ) ;
-      RECT ( 4.64 0.5 ) ( 4.72 0.67 ) ;
-      RECT ( 4.89 0.5 ) ( 4.97 0.67 ) ;
-      RECT ( 7.52 0.67 ) ( 7.85 0.75 ) ;
-      RECT ( 4.64 0.42 ) ( 4.97 0.5 ) ;
-      RECT ( 6.08 0.51 ) ( 6.41 0.59 ) ;
-      RECT ( 3.2 0.24 ) ( 3.53 0.34 ) ;
-      RECT ( 6.08 0.34 ) ( 6.16 0.51 ) ;
-      RECT ( 6.33 0.34 ) ( 6.41 0.51 ) ;
-      RECT ( 7.52 0.5 ) ( 7.6 0.67 ) ;
-      RECT ( 7.77 0.5 ) ( 7.85 0.67 ) ;
-      RECT ( 10.4 0.67 ) ( 10.73 0.75 ) ;
-      RECT ( 7.52 0.42 ) ( 7.85 0.5 ) ;
-      RECT ( 8.96 0.51 ) ( 9.29 0.59 ) ;
-      RECT ( 6.08 0.24 ) ( 6.41 0.34 ) ;
-      RECT ( 8.96 0.34 ) ( 9.04 0.51 ) ;
-      RECT ( 9.21 0.34 ) ( 9.29 0.51 ) ;
-      RECT ( 10.4 0.5 ) ( 10.48 0.67 ) ;
-      RECT ( 10.65 0.5 ) ( 10.73 0.67 ) ;
-      RECT ( 10.4 0.42 ) ( 10.73 0.5 ) ;
-      RECT ( 11.84 0.51 ) ( 12.17 0.59 ) ;
-      RECT ( 8.96 0.24 ) ( 9.29 0.34 ) ;
-      RECT ( 11.84 0.34 ) ( 11.92 0.51 ) ;
-      RECT ( 12.09 0.34 ) ( 12.17 0.51 ) ;
-      RECT ( 11.84 0.24 ) ( 12.17 0.34 ) ;
-      RECT ( 0 0.09 ) ( 12.96 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
-      RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
-      RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
-      RECT ( 5.61 -0.09 ) ( 5.92 0.09 ) ;
-      RECT ( 6.09 -0.09 ) ( 6.4 0.09 ) ;
-      RECT ( 6.57 -0.09 ) ( 6.88 0.09 ) ;
-      RECT ( 7.05 -0.09 ) ( 7.36 0.09 ) ;
-      RECT ( 7.53 -0.09 ) ( 7.84 0.09 ) ;
-      RECT ( 8.01 -0.09 ) ( 8.32 0.09 ) ;
-      RECT ( 8.49 -0.09 ) ( 8.8 0.09 ) ;
-      RECT ( 8.97 -0.09 ) ( 9.28 0.09 ) ;
-      RECT ( 9.45 -0.09 ) ( 9.76 0.09 ) ;
-      RECT ( 9.93 -0.09 ) ( 10.24 0.09 ) ;
-      RECT ( 10.41 -0.09 ) ( 10.72 0.09 ) ;
-      RECT ( 10.89 -0.09 ) ( 11.2 0.09 ) ;
-      RECT ( 11.37 -0.09 ) ( 11.68 0.09 ) ;
-      RECT ( 11.85 -0.09 ) ( 12.16 0.09 ) ;
-      RECT ( 12.33 -0.09 ) ( 12.64 0.09 ) ;
-      RECT ( 12.81 -0.09 ) ( 12.96 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 12.96 -0.09 ) ;
+      RECT ( 0 3.415 ) ( 12.96 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.475 3.415 ) ;
+      RECT ( 4.645 3.245 ) ( 4.955 3.415 ) ;
+      RECT ( 5.125 3.245 ) ( 5.435 3.415 ) ;
+      RECT ( 5.605 3.245 ) ( 5.915 3.415 ) ;
+      RECT ( 6.085 3.245 ) ( 6.395 3.415 ) ;
+      RECT ( 6.565 3.245 ) ( 6.875 3.415 ) ;
+      RECT ( 7.045 3.245 ) ( 7.355 3.415 ) ;
+      RECT ( 7.525 3.245 ) ( 7.835 3.415 ) ;
+      RECT ( 8.005 3.245 ) ( 8.315 3.415 ) ;
+      RECT ( 8.485 3.245 ) ( 8.795 3.415 ) ;
+      RECT ( 8.965 3.245 ) ( 9.275 3.415 ) ;
+      RECT ( 9.445 3.245 ) ( 9.755 3.415 ) ;
+      RECT ( 9.925 3.245 ) ( 10.235 3.415 ) ;
+      RECT ( 10.405 3.245 ) ( 10.715 3.415 ) ;
+      RECT ( 10.885 3.245 ) ( 11.195 3.415 ) ;
+      RECT ( 11.365 3.245 ) ( 11.675 3.415 ) ;
+      RECT ( 11.845 3.245 ) ( 12.155 3.415 ) ;
+      RECT ( 12.325 3.245 ) ( 12.635 3.415 ) ;
+      RECT ( 12.805 3.245 ) ( 12.96 3.415 ) ;
+      RECT ( 0 3.09 ) ( 12.96 3.245 ) ;
+      RECT ( 0.555 2.99 ) ( 0.885 3.09 ) ;
+      RECT ( 0.555 2.82 ) ( 0.635 2.99 ) ;
+      RECT ( 0.805 2.82 ) ( 0.885 2.99 ) ;
+      RECT ( 0.555 2.74 ) ( 0.885 2.82 ) ;
+      RECT ( 3.195 2.99 ) ( 3.525 3.09 ) ;
+      RECT ( 3.195 2.82 ) ( 3.275 2.99 ) ;
+      RECT ( 3.445 2.82 ) ( 3.525 2.99 ) ;
+      RECT ( 6.075 2.99 ) ( 6.405 3.09 ) ;
+      RECT ( 3.195 2.74 ) ( 3.525 2.82 ) ;
+      RECT ( 6.075 2.82 ) ( 6.155 2.99 ) ;
+      RECT ( 6.325 2.82 ) ( 6.405 2.99 ) ;
+      RECT ( 8.955 2.99 ) ( 9.285 3.09 ) ;
+      RECT ( 6.075 2.74 ) ( 6.405 2.82 ) ;
+      RECT ( 1.755 2.425 ) ( 2.085 2.505 ) ;
+      RECT ( 1.755 2.26 ) ( 1.835 2.425 ) ;
+      RECT ( 1.775 2.255 ) ( 1.835 2.26 ) ;
+      RECT ( 2.005 2.255 ) ( 2.085 2.425 ) ;
+      RECT ( 4.635 2.425 ) ( 4.965 2.505 ) ;
+      RECT ( 4.635 2.26 ) ( 4.715 2.425 ) ;
+      RECT ( 1.775 2.175 ) ( 2.085 2.255 ) ;
+      RECT ( 4.655 2.255 ) ( 4.715 2.26 ) ;
+      RECT ( 4.885 2.255 ) ( 4.965 2.425 ) ;
+      RECT ( 4.655 2.175 ) ( 4.965 2.255 ) ;
+      RECT ( 5.675 2.09 ) ( 5.845 2.66 ) ;
+      RECT ( 8.955 2.82 ) ( 9.035 2.99 ) ;
+      RECT ( 9.205 2.82 ) ( 9.285 2.99 ) ;
+      RECT ( 8.955 2.74 ) ( 9.285 2.82 ) ;
+      RECT ( 11.835 2.99 ) ( 12.165 3.09 ) ;
+      RECT ( 11.835 2.82 ) ( 11.915 2.99 ) ;
+      RECT ( 12.085 2.82 ) ( 12.165 2.99 ) ;
+      RECT ( 11.835 2.74 ) ( 12.165 2.82 ) ;
+      RECT ( 7.515 2.425 ) ( 7.845 2.505 ) ;
+      RECT ( 7.515 2.255 ) ( 7.595 2.425 ) ;
+      RECT ( 7.765 2.255 ) ( 7.845 2.425 ) ;
+      RECT ( 7.515 2.175 ) ( 7.845 2.255 ) ;
+      RECT ( 8.555 2.09 ) ( 8.725 2.66 ) ;
+      RECT ( 10.395 2.425 ) ( 10.725 2.505 ) ;
+      RECT ( 10.395 2.26 ) ( 10.475 2.425 ) ;
+      RECT ( 10.415 2.255 ) ( 10.475 2.26 ) ;
+      RECT ( 10.645 2.255 ) ( 10.725 2.425 ) ;
+      RECT ( 10.415 2.175 ) ( 10.725 2.255 ) ;
+      RECT ( 1.275 2.01 ) ( 1.605 2.09 ) ;
+      RECT ( 1.275 1.84 ) ( 1.355 2.01 ) ;
+      RECT ( 1.525 1.84 ) ( 1.605 2.01 ) ;
+      RECT ( 1.275 1.76 ) ( 1.605 1.84 ) ;
+      RECT ( 2.715 2.01 ) ( 3.045 2.09 ) ;
+      RECT ( 2.715 1.84 ) ( 2.795 2.01 ) ;
+      RECT ( 2.965 1.84 ) ( 3.045 2.01 ) ;
+      RECT ( 2.715 1.76 ) ( 3.045 1.84 ) ;
+      RECT ( 4.155 2.01 ) ( 4.485 2.09 ) ;
+      RECT ( 4.155 1.84 ) ( 4.235 2.01 ) ;
+      RECT ( 4.405 1.84 ) ( 4.485 2.01 ) ;
+      RECT ( 4.155 1.76 ) ( 4.485 1.84 ) ;
+      RECT ( 5.595 2.01 ) ( 5.925 2.09 ) ;
+      RECT ( 5.595 1.84 ) ( 5.675 2.01 ) ;
+      RECT ( 5.845 1.84 ) ( 5.925 2.01 ) ;
+      RECT ( 5.595 1.76 ) ( 5.925 1.84 ) ;
+      RECT ( 7.035 2.01 ) ( 7.345 2.09 ) ;
+      RECT ( 7.035 1.84 ) ( 7.115 2.01 ) ;
+      RECT ( 7.285 2.005 ) ( 7.345 2.01 ) ;
+      RECT ( 8.475 2.01 ) ( 8.805 2.09 ) ;
+      RECT ( 7.285 1.84 ) ( 7.365 2.005 ) ;
+      RECT ( 7.035 1.76 ) ( 7.365 1.84 ) ;
+      RECT ( 8.475 1.84 ) ( 8.555 2.01 ) ;
+      RECT ( 8.725 1.84 ) ( 8.805 2.01 ) ;
+      RECT ( 8.475 1.76 ) ( 8.805 1.84 ) ;
+      RECT ( 9.915 2.01 ) ( 10.245 2.09 ) ;
+      RECT ( 9.915 1.84 ) ( 9.995 2.01 ) ;
+      RECT ( 10.165 1.84 ) ( 10.245 2.01 ) ;
+      RECT ( 9.915 1.76 ) ( 10.245 1.84 ) ;
+      RECT ( 5.675 1.615 ) ( 5.845 1.76 ) ;
+      RECT ( 8.555 1.615 ) ( 8.725 1.76 ) ;
+      RECT ( 2.795 1.155 ) ( 2.965 1.31 ) ;
+      RECT ( 1.275 1.075 ) ( 1.605 1.155 ) ;
+      RECT ( 1.275 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.905 ) ( 1.605 1.075 ) ;
+      RECT ( 1.275 0.825 ) ( 1.605 0.905 ) ;
+      RECT ( 2.715 1.075 ) ( 3.045 1.155 ) ;
+      RECT ( 2.715 0.905 ) ( 2.795 1.075 ) ;
+      RECT ( 2.965 0.905 ) ( 3.045 1.075 ) ;
+      RECT ( 2.715 0.825 ) ( 3.045 0.905 ) ;
+      RECT ( 4.155 1.075 ) ( 4.485 1.155 ) ;
+      RECT ( 4.155 0.905 ) ( 4.235 1.075 ) ;
+      RECT ( 4.405 0.92 ) ( 4.485 1.075 ) ;
+      RECT ( 5.595 1.075 ) ( 5.925 1.155 ) ;
+      RECT ( 4.405 0.905 ) ( 4.465 0.92 ) ;
+      RECT ( 4.155 0.825 ) ( 4.465 0.905 ) ;
+      RECT ( 5.595 0.905 ) ( 5.675 1.075 ) ;
+      RECT ( 5.845 0.905 ) ( 5.925 1.075 ) ;
+      RECT ( 5.595 0.825 ) ( 5.925 0.905 ) ;
+      RECT ( 7.035 1.075 ) ( 7.365 1.155 ) ;
+      RECT ( 7.035 0.905 ) ( 7.115 1.075 ) ;
+      RECT ( 7.285 0.92 ) ( 7.365 1.075 ) ;
+      RECT ( 8.475 1.075 ) ( 8.805 1.155 ) ;
+      RECT ( 7.285 0.905 ) ( 7.345 0.92 ) ;
+      RECT ( 7.035 0.825 ) ( 7.345 0.905 ) ;
+      RECT ( 8.475 0.905 ) ( 8.555 1.075 ) ;
+      RECT ( 8.725 0.905 ) ( 8.805 1.075 ) ;
+      RECT ( 8.475 0.825 ) ( 8.805 0.905 ) ;
+      RECT ( 9.915 1.075 ) ( 10.245 1.155 ) ;
+      RECT ( 9.915 0.905 ) ( 9.995 1.075 ) ;
+      RECT ( 10.165 0.92 ) ( 10.245 1.075 ) ;
+      RECT ( 10.165 0.905 ) ( 10.225 0.92 ) ;
+      RECT ( 9.915 0.825 ) ( 10.225 0.905 ) ;
+      RECT ( 10.475 0.75 ) ( 10.645 2.175 ) ;
+      RECT ( 11.355 2.01 ) ( 11.685 2.09 ) ;
+      RECT ( 11.355 1.84 ) ( 11.435 2.01 ) ;
+      RECT ( 11.605 1.84 ) ( 11.685 2.01 ) ;
+      RECT ( 11.355 1.76 ) ( 11.685 1.84 ) ;
+      RECT ( 11.355 1.075 ) ( 11.685 1.155 ) ;
+      RECT ( 11.355 0.905 ) ( 11.435 1.075 ) ;
+      RECT ( 11.605 0.905 ) ( 11.685 1.075 ) ;
+      RECT ( 11.355 0.825 ) ( 11.685 0.905 ) ;
+      RECT ( 1.775 0.67 ) ( 2.085 0.75 ) ;
+      RECT ( 1.775 0.655 ) ( 1.835 0.67 ) ;
+      RECT ( 0.555 0.51 ) ( 0.885 0.59 ) ;
+      RECT ( 0.555 0.34 ) ( 0.635 0.51 ) ;
+      RECT ( 0.805 0.34 ) ( 0.885 0.51 ) ;
+      RECT ( 1.755 0.5 ) ( 1.835 0.655 ) ;
+      RECT ( 2.005 0.5 ) ( 2.085 0.67 ) ;
+      RECT ( 4.635 0.67 ) ( 4.965 0.75 ) ;
+      RECT ( 1.755 0.42 ) ( 2.085 0.5 ) ;
+      RECT ( 3.195 0.51 ) ( 3.525 0.59 ) ;
+      RECT ( 0.555 0.24 ) ( 0.885 0.34 ) ;
+      RECT ( 3.195 0.34 ) ( 3.275 0.51 ) ;
+      RECT ( 3.445 0.34 ) ( 3.525 0.51 ) ;
+      RECT ( 4.635 0.5 ) ( 4.715 0.67 ) ;
+      RECT ( 4.885 0.5 ) ( 4.965 0.67 ) ;
+      RECT ( 7.515 0.67 ) ( 7.845 0.75 ) ;
+      RECT ( 4.635 0.42 ) ( 4.965 0.5 ) ;
+      RECT ( 6.075 0.51 ) ( 6.405 0.59 ) ;
+      RECT ( 3.195 0.24 ) ( 3.525 0.34 ) ;
+      RECT ( 6.075 0.34 ) ( 6.155 0.51 ) ;
+      RECT ( 6.325 0.34 ) ( 6.405 0.51 ) ;
+      RECT ( 7.515 0.5 ) ( 7.595 0.67 ) ;
+      RECT ( 7.765 0.5 ) ( 7.845 0.67 ) ;
+      RECT ( 10.395 0.67 ) ( 10.725 0.75 ) ;
+      RECT ( 7.515 0.42 ) ( 7.845 0.5 ) ;
+      RECT ( 8.955 0.51 ) ( 9.285 0.59 ) ;
+      RECT ( 6.075 0.24 ) ( 6.405 0.34 ) ;
+      RECT ( 8.955 0.34 ) ( 9.035 0.51 ) ;
+      RECT ( 9.205 0.34 ) ( 9.285 0.51 ) ;
+      RECT ( 10.395 0.5 ) ( 10.475 0.67 ) ;
+      RECT ( 10.645 0.5 ) ( 10.725 0.67 ) ;
+      RECT ( 10.395 0.42 ) ( 10.725 0.5 ) ;
+      RECT ( 11.835 0.51 ) ( 12.165 0.59 ) ;
+      RECT ( 8.955 0.24 ) ( 9.285 0.34 ) ;
+      RECT ( 11.835 0.34 ) ( 11.915 0.51 ) ;
+      RECT ( 12.085 0.34 ) ( 12.165 0.51 ) ;
+      RECT ( 11.835 0.24 ) ( 12.165 0.34 ) ;
+      RECT ( 0 0.085 ) ( 12.96 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.475 0.085 ) ;
+      RECT ( 4.645 -0.085 ) ( 4.955 0.085 ) ;
+      RECT ( 5.125 -0.085 ) ( 5.435 0.085 ) ;
+      RECT ( 5.605 -0.085 ) ( 5.915 0.085 ) ;
+      RECT ( 6.085 -0.085 ) ( 6.395 0.085 ) ;
+      RECT ( 6.565 -0.085 ) ( 6.875 0.085 ) ;
+      RECT ( 7.045 -0.085 ) ( 7.355 0.085 ) ;
+      RECT ( 7.525 -0.085 ) ( 7.835 0.085 ) ;
+      RECT ( 8.005 -0.085 ) ( 8.315 0.085 ) ;
+      RECT ( 8.485 -0.085 ) ( 8.795 0.085 ) ;
+      RECT ( 8.965 -0.085 ) ( 9.275 0.085 ) ;
+      RECT ( 9.445 -0.085 ) ( 9.755 0.085 ) ;
+      RECT ( 9.925 -0.085 ) ( 10.235 0.085 ) ;
+      RECT ( 10.405 -0.085 ) ( 10.715 0.085 ) ;
+      RECT ( 10.885 -0.085 ) ( 11.195 0.085 ) ;
+      RECT ( 11.365 -0.085 ) ( 11.675 0.085 ) ;
+      RECT ( 11.845 -0.085 ) ( 12.155 0.085 ) ;
+      RECT ( 12.325 -0.085 ) ( 12.635 0.085 ) ;
+      RECT ( 12.805 -0.085 ) ( 12.96 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 12.96 -0.085 ) ;
     LAYER metal1 ;
-      RECT ( 0 3.42 ) ( 12.96 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
-      RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
-      RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
-      RECT ( 5.61 3.25 ) ( 5.92 3.42 ) ;
-      RECT ( 6.09 3.25 ) ( 6.4 3.42 ) ;
-      RECT ( 6.57 3.25 ) ( 6.88 3.42 ) ;
-      RECT ( 7.05 3.25 ) ( 7.36 3.42 ) ;
-      RECT ( 7.53 3.25 ) ( 7.84 3.42 ) ;
-      RECT ( 8.01 3.25 ) ( 8.32 3.42 ) ;
-      RECT ( 8.49 3.25 ) ( 8.8 3.42 ) ;
-      RECT ( 8.97 3.25 ) ( 9.28 3.42 ) ;
-      RECT ( 9.45 3.25 ) ( 9.76 3.42 ) ;
-      RECT ( 9.93 3.25 ) ( 10.24 3.42 ) ;
-      RECT ( 10.41 3.25 ) ( 10.72 3.42 ) ;
-      RECT ( 10.89 3.25 ) ( 11.2 3.42 ) ;
-      RECT ( 11.37 3.25 ) ( 11.68 3.42 ) ;
-      RECT ( 11.85 3.25 ) ( 12.16 3.42 ) ;
-      RECT ( 12.33 3.25 ) ( 12.64 3.42 ) ;
-      RECT ( 12.81 3.25 ) ( 12.96 3.42 ) ;
-      RECT ( 0 3.09 ) ( 12.96 3.25 ) ;
-      RECT ( 0.58 2.99 ) ( 0.87 3.09 ) ;
-      RECT ( 0.58 2.82 ) ( 0.64 2.99 ) ;
-      RECT ( 0.81 2.82 ) ( 0.87 2.99 ) ;
-      RECT ( 3.22 2.99 ) ( 3.51 3.09 ) ;
-      RECT ( 3.22 2.82 ) ( 3.28 2.99 ) ;
-      RECT ( 3.45 2.82 ) ( 3.51 2.99 ) ;
-      RECT ( 6.1 2.99 ) ( 6.39 3.09 ) ;
-      RECT ( 6.1 2.82 ) ( 6.16 2.99 ) ;
-      RECT ( 6.33 2.82 ) ( 6.39 2.99 ) ;
-      RECT ( 8.98 2.99 ) ( 9.27 3.09 ) ;
-      RECT ( 8.98 2.82 ) ( 9.04 2.99 ) ;
-      RECT ( 9.21 2.82 ) ( 9.27 2.99 ) ;
-      RECT ( 0.58 2.76 ) ( 0.87 2.82 ) ;
-      RECT ( 1.37 2.68 ) ( 2.95 2.82 ) ;
-      RECT ( 3.22 2.76 ) ( 3.51 2.82 ) ;
-      RECT ( 1.37 2.07 ) ( 1.51 2.68 ) ;
-      RECT ( 1.78 2.43 ) ( 2.07 2.49 ) ;
-      RECT ( 1.78 2.26 ) ( 1.84 2.43 ) ;
-      RECT ( 2.01 2.26 ) ( 2.07 2.43 ) ;
-      RECT ( 1.78 2.2 ) ( 2.07 2.26 ) ;
-      RECT ( 1.3 2.01 ) ( 1.59 2.07 ) ;
-      RECT ( 1.3 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.59 2.01 ) ;
-      RECT ( 1.3 1.78 ) ( 1.59 1.84 ) ;
-      RECT ( 1.37 1.14 ) ( 1.51 1.78 ) ;
-      RECT ( 1.3 1.08 ) ( 1.59 1.14 ) ;
-      RECT ( 1.3 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 1.59 1.08 ) ;
-      RECT ( 1.3 0.85 ) ( 1.59 0.91 ) ;
-      RECT ( 1.85 1.06 ) ( 1.99 2.2 ) ;
-      RECT ( 2.81 2.07 ) ( 2.95 2.68 ) ;
-      RECT ( 4.25 2.68 ) ( 5.83 2.82 ) ;
-      RECT ( 6.1 2.76 ) ( 6.39 2.82 ) ;
-      RECT ( 4.25 2.07 ) ( 4.39 2.68 ) ;
-      RECT ( 4.66 2.43 ) ( 4.95 2.49 ) ;
-      RECT ( 4.66 2.26 ) ( 4.72 2.43 ) ;
-      RECT ( 4.89 2.26 ) ( 4.95 2.43 ) ;
-      RECT ( 4.66 2.2 ) ( 4.95 2.26 ) ;
-      RECT ( 2.74 2.01 ) ( 3.03 2.07 ) ;
-      RECT ( 2.74 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.03 2.01 ) ;
-      RECT ( 2.74 1.78 ) ( 3.03 1.84 ) ;
-      RECT ( 4.18 2.01 ) ( 4.47 2.07 ) ;
-      RECT ( 4.18 1.84 ) ( 4.24 2.01 ) ;
-      RECT ( 4.41 1.84 ) ( 4.47 2.01 ) ;
-      RECT ( 4.18 1.78 ) ( 4.47 1.84 ) ;
-      RECT ( 4.25 1.14 ) ( 4.39 1.78 ) ;
-      RECT ( 4.18 1.08 ) ( 4.47 1.14 ) ;
-      RECT ( 4.18 1.06 ) ( 4.24 1.08 ) ;
-      RECT ( 1.85 0.92 ) ( 4.24 1.06 ) ;
+      RECT ( 0 3.415 ) ( 12.96 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.475 3.415 ) ;
+      RECT ( 4.645 3.245 ) ( 4.955 3.415 ) ;
+      RECT ( 5.125 3.245 ) ( 5.435 3.415 ) ;
+      RECT ( 5.605 3.245 ) ( 5.915 3.415 ) ;
+      RECT ( 6.085 3.245 ) ( 6.395 3.415 ) ;
+      RECT ( 6.565 3.245 ) ( 6.875 3.415 ) ;
+      RECT ( 7.045 3.245 ) ( 7.355 3.415 ) ;
+      RECT ( 7.525 3.245 ) ( 7.835 3.415 ) ;
+      RECT ( 8.005 3.245 ) ( 8.315 3.415 ) ;
+      RECT ( 8.485 3.245 ) ( 8.795 3.415 ) ;
+      RECT ( 8.965 3.245 ) ( 9.275 3.415 ) ;
+      RECT ( 9.445 3.245 ) ( 9.755 3.415 ) ;
+      RECT ( 9.925 3.245 ) ( 10.235 3.415 ) ;
+      RECT ( 10.405 3.245 ) ( 10.715 3.415 ) ;
+      RECT ( 10.885 3.245 ) ( 11.195 3.415 ) ;
+      RECT ( 11.365 3.245 ) ( 11.675 3.415 ) ;
+      RECT ( 11.845 3.245 ) ( 12.155 3.415 ) ;
+      RECT ( 12.325 3.245 ) ( 12.635 3.415 ) ;
+      RECT ( 12.805 3.245 ) ( 12.96 3.415 ) ;
+      RECT ( 0 3.09 ) ( 12.96 3.245 ) ;
+      RECT ( 0.575 2.99 ) ( 0.865 3.09 ) ;
+      RECT ( 0.575 2.82 ) ( 0.635 2.99 ) ;
+      RECT ( 0.805 2.82 ) ( 0.865 2.99 ) ;
+      RECT ( 0.575 2.76 ) ( 0.865 2.82 ) ;
+      RECT ( 3.215 2.99 ) ( 3.505 3.09 ) ;
+      RECT ( 3.215 2.82 ) ( 3.275 2.99 ) ;
+      RECT ( 3.445 2.82 ) ( 3.505 2.99 ) ;
+      RECT ( 6.095 2.99 ) ( 6.385 3.09 ) ;
+      RECT ( 1.37 2.675 ) ( 2.95 2.815 ) ;
+      RECT ( 3.215 2.76 ) ( 3.505 2.82 ) ;
+      RECT ( 5.615 2.83 ) ( 5.905 2.89 ) ;
+      RECT ( 5.615 2.815 ) ( 5.675 2.83 ) ;
+      RECT ( 1.37 2.07 ) ( 1.51 2.675 ) ;
+      RECT ( 1.775 2.425 ) ( 2.065 2.485 ) ;
+      RECT ( 1.775 2.255 ) ( 1.835 2.425 ) ;
+      RECT ( 2.005 2.255 ) ( 2.065 2.425 ) ;
+      RECT ( 1.775 2.195 ) ( 2.065 2.255 ) ;
+      RECT ( 1.295 2.01 ) ( 1.585 2.07 ) ;
+      RECT ( 1.295 1.84 ) ( 1.355 2.01 ) ;
+      RECT ( 1.525 1.84 ) ( 1.585 2.01 ) ;
+      RECT ( 1.295 1.78 ) ( 1.585 1.84 ) ;
+      RECT ( 1.37 1.135 ) ( 1.51 1.78 ) ;
+      RECT ( 1.295 1.075 ) ( 1.585 1.135 ) ;
+      RECT ( 1.295 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.905 ) ( 1.585 1.075 ) ;
+      RECT ( 1.295 0.845 ) ( 1.585 0.905 ) ;
+      RECT ( 1.85 1.06 ) ( 1.99 2.195 ) ;
+      RECT ( 2.81 2.07 ) ( 2.95 2.675 ) ;
+      RECT ( 4.25 2.675 ) ( 5.675 2.815 ) ;
+      RECT ( 4.25 2.07 ) ( 4.39 2.675 ) ;
+      RECT ( 5.615 2.66 ) ( 5.675 2.675 ) ;
+      RECT ( 5.845 2.66 ) ( 5.905 2.83 ) ;
+      RECT ( 6.095 2.82 ) ( 6.155 2.99 ) ;
+      RECT ( 6.325 2.82 ) ( 6.385 2.99 ) ;
+      RECT ( 8.975 2.99 ) ( 9.265 3.09 ) ;
+      RECT ( 6.095 2.76 ) ( 6.385 2.82 ) ;
+      RECT ( 8.495 2.83 ) ( 8.785 2.89 ) ;
+      RECT ( 8.495 2.815 ) ( 8.555 2.83 ) ;
+      RECT ( 5.615 2.6 ) ( 5.905 2.66 ) ;
+      RECT ( 7.13 2.675 ) ( 8.555 2.815 ) ;
+      RECT ( 4.655 2.425 ) ( 4.945 2.485 ) ;
+      RECT ( 4.655 2.255 ) ( 4.715 2.425 ) ;
+      RECT ( 4.885 2.255 ) ( 4.945 2.425 ) ;
+      RECT ( 4.655 2.195 ) ( 4.945 2.255 ) ;
+      RECT ( 2.735 2.01 ) ( 3.025 2.07 ) ;
+      RECT ( 2.735 1.84 ) ( 2.795 2.01 ) ;
+      RECT ( 2.965 1.84 ) ( 3.025 2.01 ) ;
+      RECT ( 2.735 1.78 ) ( 3.025 1.84 ) ;
+      RECT ( 4.175 2.01 ) ( 4.465 2.07 ) ;
+      RECT ( 4.175 1.84 ) ( 4.235 2.01 ) ;
+      RECT ( 4.405 1.84 ) ( 4.465 2.01 ) ;
+      RECT ( 4.175 1.78 ) ( 4.465 1.84 ) ;
+      RECT ( 4.73 1.995 ) ( 4.87 2.195 ) ;
+      RECT ( 7.13 2.07 ) ( 7.27 2.675 ) ;
+      RECT ( 8.495 2.66 ) ( 8.555 2.675 ) ;
+      RECT ( 8.725 2.66 ) ( 8.785 2.83 ) ;
+      RECT ( 8.975 2.82 ) ( 9.035 2.99 ) ;
+      RECT ( 9.205 2.82 ) ( 9.265 2.99 ) ;
+      RECT ( 8.975 2.76 ) ( 9.265 2.82 ) ;
+      RECT ( 11.855 2.99 ) ( 12.145 3.09 ) ;
+      RECT ( 11.855 2.82 ) ( 11.915 2.99 ) ;
+      RECT ( 12.085 2.82 ) ( 12.145 2.99 ) ;
+      RECT ( 11.855 2.76 ) ( 12.145 2.82 ) ;
+      RECT ( 8.495 2.6 ) ( 8.785 2.66 ) ;
+      RECT ( 7.535 2.425 ) ( 7.825 2.485 ) ;
+      RECT ( 7.535 2.255 ) ( 7.595 2.425 ) ;
+      RECT ( 7.765 2.255 ) ( 7.825 2.425 ) ;
+      RECT ( 7.535 2.195 ) ( 7.825 2.255 ) ;
+      RECT ( 7.055 2.01 ) ( 7.345 2.07 ) ;
+      RECT ( 7.055 1.995 ) ( 7.115 2.01 ) ;
+      RECT ( 4.73 1.855 ) ( 7.115 1.995 ) ;
+      RECT ( 2.81 1.54 ) ( 2.95 1.78 ) ;
+      RECT ( 2.735 1.48 ) ( 3.025 1.54 ) ;
+      RECT ( 2.735 1.31 ) ( 2.795 1.48 ) ;
+      RECT ( 2.965 1.31 ) ( 3.025 1.48 ) ;
+      RECT ( 2.735 1.25 ) ( 3.025 1.31 ) ;
+      RECT ( 4.25 1.135 ) ( 4.39 1.78 ) ;
+      RECT ( 4.175 1.075 ) ( 4.465 1.135 ) ;
+      RECT ( 4.175 1.06 ) ( 4.235 1.075 ) ;
+      RECT ( 1.85 0.92 ) ( 4.235 1.06 ) ;
       RECT ( 1.85 0.73 ) ( 1.99 0.92 ) ;
-      RECT ( 4.18 0.91 ) ( 4.24 0.92 ) ;
-      RECT ( 4.41 0.91 ) ( 4.47 1.08 ) ;
-      RECT ( 4.18 0.85 ) ( 4.47 0.91 ) ;
-      RECT ( 4.73 1.06 ) ( 4.87 2.2 ) ;
-      RECT ( 5.69 2.07 ) ( 5.83 2.68 ) ;
-      RECT ( 7.13 2.68 ) ( 8.71 2.82 ) ;
-      RECT ( 8.98 2.76 ) ( 9.27 2.82 ) ;
-      RECT ( 11.86 2.99 ) ( 12.15 3.09 ) ;
-      RECT ( 11.86 2.82 ) ( 11.92 2.99 ) ;
-      RECT ( 12.09 2.82 ) ( 12.15 2.99 ) ;
-      RECT ( 11.86 2.76 ) ( 12.15 2.82 ) ;
-      RECT ( 7.13 2.07 ) ( 7.27 2.68 ) ;
-      RECT ( 7.54 2.43 ) ( 7.83 2.49 ) ;
-      RECT ( 7.54 2.26 ) ( 7.6 2.43 ) ;
-      RECT ( 7.77 2.26 ) ( 7.83 2.43 ) ;
-      RECT ( 7.54 2.2 ) ( 7.83 2.26 ) ;
-      RECT ( 5.62 2.01 ) ( 5.91 2.07 ) ;
-      RECT ( 5.62 1.84 ) ( 5.68 2.01 ) ;
-      RECT ( 5.85 1.84 ) ( 5.91 2.01 ) ;
-      RECT ( 5.62 1.78 ) ( 5.91 1.84 ) ;
-      RECT ( 7.06 2.01 ) ( 7.35 2.07 ) ;
-      RECT ( 7.06 1.84 ) ( 7.12 2.01 ) ;
-      RECT ( 7.29 1.84 ) ( 7.35 2.01 ) ;
-      RECT ( 7.06 1.78 ) ( 7.35 1.84 ) ;
-      RECT ( 7.13 1.14 ) ( 7.27 1.78 ) ;
-      RECT ( 7.06 1.08 ) ( 7.35 1.14 ) ;
-      RECT ( 7.06 1.06 ) ( 7.12 1.08 ) ;
-      RECT ( 4.73 0.92 ) ( 7.12 1.06 ) ;
-      RECT ( 4.73 0.73 ) ( 4.87 0.92 ) ;
-      RECT ( 7.06 0.91 ) ( 7.12 0.92 ) ;
-      RECT ( 7.29 0.91 ) ( 7.35 1.08 ) ;
-      RECT ( 7.06 0.85 ) ( 7.35 0.91 ) ;
-      RECT ( 7.61 1.06 ) ( 7.75 2.2 ) ;
-      RECT ( 8.57 2.07 ) ( 8.71 2.68 ) ;
-      RECT ( 10.42 2.43 ) ( 10.71 2.49 ) ;
-      RECT ( 10.42 2.26 ) ( 10.48 2.43 ) ;
-      RECT ( 10.65 2.26 ) ( 10.71 2.43 ) ;
-      RECT ( 10.42 2.2 ) ( 10.71 2.26 ) ;
-      RECT ( 8.5 2.01 ) ( 8.79 2.07 ) ;
-      RECT ( 8.5 1.84 ) ( 8.56 2.01 ) ;
-      RECT ( 8.73 1.84 ) ( 8.79 2.01 ) ;
-      RECT ( 8.5 1.78 ) ( 8.79 1.84 ) ;
-      RECT ( 9.94 2.01 ) ( 10.23 2.07 ) ;
-      RECT ( 9.94 1.84 ) ( 10 2.01 ) ;
-      RECT ( 10.17 1.84 ) ( 10.23 2.01 ) ;
-      RECT ( 9.94 1.78 ) ( 10.23 1.84 ) ;
-      RECT ( 10.01 1.14 ) ( 10.15 1.78 ) ;
-      RECT ( 10.49 1.54 ) ( 10.63 2.2 ) ;
-      RECT ( 11.38 2.01 ) ( 11.67 2.07 ) ;
-      RECT ( 11.38 1.84 ) ( 11.44 2.01 ) ;
-      RECT ( 11.61 1.84 ) ( 11.67 2.01 ) ;
-      RECT ( 11.38 1.78 ) ( 11.67 1.84 ) ;
-      RECT ( 10.42 1.48 ) ( 10.71 1.54 ) ;
-      RECT ( 10.42 1.31 ) ( 10.48 1.48 ) ;
-      RECT ( 10.65 1.31 ) ( 10.71 1.48 ) ;
-      RECT ( 10.42 1.25 ) ( 10.71 1.31 ) ;
-      RECT ( 11.45 1.14 ) ( 11.59 1.78 ) ;
-      RECT ( 9.94 1.08 ) ( 10.23 1.14 ) ;
-      RECT ( 9.94 1.06 ) ( 10 1.08 ) ;
-      RECT ( 7.61 0.92 ) ( 10 1.06 ) ;
-      RECT ( 7.61 0.73 ) ( 7.75 0.92 ) ;
-      RECT ( 9.94 0.91 ) ( 10 0.92 ) ;
-      RECT ( 10.17 1.06 ) ( 10.23 1.08 ) ;
-      RECT ( 11.38 1.08 ) ( 11.67 1.14 ) ;
-      RECT ( 11.38 1.06 ) ( 11.44 1.08 ) ;
-      RECT ( 10.17 0.92 ) ( 11.44 1.06 ) ;
-      RECT ( 10.17 0.91 ) ( 10.23 0.92 ) ;
-      RECT ( 9.94 0.85 ) ( 10.23 0.91 ) ;
-      RECT ( 11.38 0.91 ) ( 11.44 0.92 ) ;
-      RECT ( 11.61 0.91 ) ( 11.67 1.08 ) ;
-      RECT ( 11.38 0.85 ) ( 11.67 0.91 ) ;
-      RECT ( 1.78 0.67 ) ( 2.07 0.73 ) ;
-      RECT ( 0.58 0.51 ) ( 0.87 0.57 ) ;
-      RECT ( 0.58 0.34 ) ( 0.64 0.51 ) ;
-      RECT ( 0.81 0.34 ) ( 0.87 0.51 ) ;
-      RECT ( 1.78 0.5 ) ( 1.84 0.67 ) ;
-      RECT ( 2.01 0.5 ) ( 2.07 0.67 ) ;
-      RECT ( 4.66 0.67 ) ( 4.95 0.73 ) ;
-      RECT ( 1.78 0.44 ) ( 2.07 0.5 ) ;
-      RECT ( 3.22 0.51 ) ( 3.51 0.57 ) ;
-      RECT ( 0.58 0.24 ) ( 0.87 0.34 ) ;
-      RECT ( 3.22 0.34 ) ( 3.28 0.51 ) ;
-      RECT ( 3.45 0.34 ) ( 3.51 0.51 ) ;
-      RECT ( 4.66 0.5 ) ( 4.72 0.67 ) ;
-      RECT ( 4.89 0.5 ) ( 4.95 0.67 ) ;
-      RECT ( 7.54 0.67 ) ( 7.83 0.73 ) ;
-      RECT ( 4.66 0.44 ) ( 4.95 0.5 ) ;
-      RECT ( 6.1 0.51 ) ( 6.39 0.57 ) ;
-      RECT ( 3.22 0.24 ) ( 3.51 0.34 ) ;
-      RECT ( 6.1 0.34 ) ( 6.16 0.51 ) ;
-      RECT ( 6.33 0.34 ) ( 6.39 0.51 ) ;
-      RECT ( 7.54 0.5 ) ( 7.6 0.67 ) ;
-      RECT ( 7.77 0.5 ) ( 7.83 0.67 ) ;
-      RECT ( 7.54 0.44 ) ( 7.83 0.5 ) ;
-      RECT ( 8.98 0.51 ) ( 9.27 0.57 ) ;
-      RECT ( 6.1 0.24 ) ( 6.39 0.34 ) ;
-      RECT ( 8.98 0.34 ) ( 9.04 0.51 ) ;
-      RECT ( 9.21 0.34 ) ( 9.27 0.51 ) ;
-      RECT ( 8.98 0.24 ) ( 9.27 0.34 ) ;
-      RECT ( 11.86 0.51 ) ( 12.15 0.57 ) ;
-      RECT ( 11.86 0.34 ) ( 11.92 0.51 ) ;
-      RECT ( 12.09 0.34 ) ( 12.15 0.51 ) ;
-      RECT ( 11.86 0.24 ) ( 12.15 0.34 ) ;
-      RECT ( 0 0.09 ) ( 12.96 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
-      RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
-      RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
-      RECT ( 5.61 -0.09 ) ( 5.92 0.09 ) ;
-      RECT ( 6.09 -0.09 ) ( 6.4 0.09 ) ;
-      RECT ( 6.57 -0.09 ) ( 6.88 0.09 ) ;
-      RECT ( 7.05 -0.09 ) ( 7.36 0.09 ) ;
-      RECT ( 7.53 -0.09 ) ( 7.84 0.09 ) ;
-      RECT ( 8.01 -0.09 ) ( 8.32 0.09 ) ;
-      RECT ( 8.49 -0.09 ) ( 8.8 0.09 ) ;
-      RECT ( 8.97 -0.09 ) ( 9.28 0.09 ) ;
-      RECT ( 9.45 -0.09 ) ( 9.76 0.09 ) ;
-      RECT ( 9.93 -0.09 ) ( 10.24 0.09 ) ;
-      RECT ( 10.41 -0.09 ) ( 10.72 0.09 ) ;
-      RECT ( 10.89 -0.09 ) ( 11.2 0.09 ) ;
-      RECT ( 11.37 -0.09 ) ( 11.68 0.09 ) ;
-      RECT ( 11.85 -0.09 ) ( 12.16 0.09 ) ;
-      RECT ( 12.33 -0.09 ) ( 12.64 0.09 ) ;
-      RECT ( 12.81 -0.09 ) ( 12.96 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 12.96 -0.09 ) ;
+      RECT ( 4.175 0.905 ) ( 4.235 0.92 ) ;
+      RECT ( 4.405 0.905 ) ( 4.465 1.075 ) ;
+      RECT ( 4.175 0.845 ) ( 4.465 0.905 ) ;
+      RECT ( 4.73 0.73 ) ( 4.87 1.855 ) ;
+      RECT ( 7.055 1.84 ) ( 7.115 1.855 ) ;
+      RECT ( 7.285 1.84 ) ( 7.345 2.01 ) ;
+      RECT ( 7.055 1.78 ) ( 7.345 1.84 ) ;
+      RECT ( 7.61 1.995 ) ( 7.75 2.195 ) ;
+      RECT ( 9.935 2.01 ) ( 10.225 2.07 ) ;
+      RECT ( 9.935 1.995 ) ( 9.995 2.01 ) ;
+      RECT ( 7.61 1.855 ) ( 9.995 1.995 ) ;
+      RECT ( 5.615 1.615 ) ( 5.905 1.675 ) ;
+      RECT ( 5.615 1.445 ) ( 5.675 1.615 ) ;
+      RECT ( 5.845 1.445 ) ( 5.905 1.615 ) ;
+      RECT ( 5.615 1.385 ) ( 5.905 1.445 ) ;
+      RECT ( 5.69 1.135 ) ( 5.83 1.385 ) ;
+      RECT ( 7.13 1.135 ) ( 7.27 1.78 ) ;
+      RECT ( 5.615 1.075 ) ( 5.905 1.135 ) ;
+      RECT ( 5.615 0.905 ) ( 5.675 1.075 ) ;
+      RECT ( 5.845 0.905 ) ( 5.905 1.075 ) ;
+      RECT ( 5.615 0.845 ) ( 5.905 0.905 ) ;
+      RECT ( 7.055 1.075 ) ( 7.345 1.135 ) ;
+      RECT ( 7.055 0.905 ) ( 7.115 1.075 ) ;
+      RECT ( 7.285 0.905 ) ( 7.345 1.075 ) ;
+      RECT ( 7.055 0.845 ) ( 7.345 0.905 ) ;
+      RECT ( 7.61 0.73 ) ( 7.75 1.855 ) ;
+      RECT ( 9.935 1.84 ) ( 9.995 1.855 ) ;
+      RECT ( 10.165 1.995 ) ( 10.225 2.01 ) ;
+      RECT ( 11.375 2.01 ) ( 11.665 2.07 ) ;
+      RECT ( 11.375 1.995 ) ( 11.435 2.01 ) ;
+      RECT ( 10.165 1.855 ) ( 11.435 1.995 ) ;
+      RECT ( 10.165 1.84 ) ( 10.225 1.855 ) ;
+      RECT ( 9.935 1.78 ) ( 10.225 1.84 ) ;
+      RECT ( 11.375 1.84 ) ( 11.435 1.855 ) ;
+      RECT ( 11.605 1.84 ) ( 11.665 2.01 ) ;
+      RECT ( 11.375 1.78 ) ( 11.665 1.84 ) ;
+      RECT ( 8.495 1.615 ) ( 8.785 1.675 ) ;
+      RECT ( 8.495 1.445 ) ( 8.555 1.615 ) ;
+      RECT ( 8.725 1.445 ) ( 8.785 1.615 ) ;
+      RECT ( 8.495 1.385 ) ( 8.785 1.445 ) ;
+      RECT ( 8.57 1.135 ) ( 8.71 1.385 ) ;
+      RECT ( 10.01 1.135 ) ( 10.15 1.78 ) ;
+      RECT ( 11.45 1.135 ) ( 11.59 1.78 ) ;
+      RECT ( 8.495 1.075 ) ( 8.785 1.135 ) ;
+      RECT ( 8.495 0.905 ) ( 8.555 1.075 ) ;
+      RECT ( 8.725 0.905 ) ( 8.785 1.075 ) ;
+      RECT ( 8.495 0.845 ) ( 8.785 0.905 ) ;
+      RECT ( 9.935 1.075 ) ( 10.225 1.135 ) ;
+      RECT ( 9.935 0.905 ) ( 9.995 1.075 ) ;
+      RECT ( 10.165 0.905 ) ( 10.225 1.075 ) ;
+      RECT ( 9.935 0.845 ) ( 10.225 0.905 ) ;
+      RECT ( 11.375 1.075 ) ( 11.665 1.135 ) ;
+      RECT ( 11.375 0.905 ) ( 11.435 1.075 ) ;
+      RECT ( 11.605 0.905 ) ( 11.665 1.075 ) ;
+      RECT ( 11.375 0.845 ) ( 11.665 0.905 ) ;
+      RECT ( 1.775 0.67 ) ( 2.065 0.73 ) ;
+      RECT ( 0.575 0.51 ) ( 0.865 0.57 ) ;
+      RECT ( 0.575 0.34 ) ( 0.635 0.51 ) ;
+      RECT ( 0.805 0.34 ) ( 0.865 0.51 ) ;
+      RECT ( 1.775 0.5 ) ( 1.835 0.67 ) ;
+      RECT ( 2.005 0.5 ) ( 2.065 0.67 ) ;
+      RECT ( 4.655 0.67 ) ( 4.945 0.73 ) ;
+      RECT ( 1.775 0.44 ) ( 2.065 0.5 ) ;
+      RECT ( 3.215 0.51 ) ( 3.505 0.57 ) ;
+      RECT ( 0.575 0.24 ) ( 0.865 0.34 ) ;
+      RECT ( 3.215 0.34 ) ( 3.275 0.51 ) ;
+      RECT ( 3.445 0.34 ) ( 3.505 0.51 ) ;
+      RECT ( 4.655 0.5 ) ( 4.715 0.67 ) ;
+      RECT ( 4.885 0.5 ) ( 4.945 0.67 ) ;
+      RECT ( 7.535 0.67 ) ( 7.825 0.73 ) ;
+      RECT ( 4.655 0.44 ) ( 4.945 0.5 ) ;
+      RECT ( 6.095 0.51 ) ( 6.385 0.57 ) ;
+      RECT ( 3.215 0.24 ) ( 3.505 0.34 ) ;
+      RECT ( 6.095 0.34 ) ( 6.155 0.51 ) ;
+      RECT ( 6.325 0.34 ) ( 6.385 0.51 ) ;
+      RECT ( 7.535 0.5 ) ( 7.595 0.67 ) ;
+      RECT ( 7.765 0.5 ) ( 7.825 0.67 ) ;
+      RECT ( 10.415 0.67 ) ( 10.705 0.73 ) ;
+      RECT ( 7.535 0.44 ) ( 7.825 0.5 ) ;
+      RECT ( 8.975 0.51 ) ( 9.265 0.57 ) ;
+      RECT ( 6.095 0.24 ) ( 6.385 0.34 ) ;
+      RECT ( 8.975 0.34 ) ( 9.035 0.51 ) ;
+      RECT ( 9.205 0.34 ) ( 9.265 0.51 ) ;
+      RECT ( 10.415 0.5 ) ( 10.475 0.67 ) ;
+      RECT ( 10.645 0.5 ) ( 10.705 0.67 ) ;
+      RECT ( 10.415 0.44 ) ( 10.705 0.5 ) ;
+      RECT ( 11.855 0.51 ) ( 12.145 0.57 ) ;
+      RECT ( 8.975 0.24 ) ( 9.265 0.34 ) ;
+      RECT ( 11.855 0.34 ) ( 11.915 0.51 ) ;
+      RECT ( 12.085 0.34 ) ( 12.145 0.51 ) ;
+      RECT ( 11.855 0.24 ) ( 12.145 0.34 ) ;
+      RECT ( 0 0.085 ) ( 12.96 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.475 0.085 ) ;
+      RECT ( 4.645 -0.085 ) ( 4.955 0.085 ) ;
+      RECT ( 5.125 -0.085 ) ( 5.435 0.085 ) ;
+      RECT ( 5.605 -0.085 ) ( 5.915 0.085 ) ;
+      RECT ( 6.085 -0.085 ) ( 6.395 0.085 ) ;
+      RECT ( 6.565 -0.085 ) ( 6.875 0.085 ) ;
+      RECT ( 7.045 -0.085 ) ( 7.355 0.085 ) ;
+      RECT ( 7.525 -0.085 ) ( 7.835 0.085 ) ;
+      RECT ( 8.005 -0.085 ) ( 8.315 0.085 ) ;
+      RECT ( 8.485 -0.085 ) ( 8.795 0.085 ) ;
+      RECT ( 8.965 -0.085 ) ( 9.275 0.085 ) ;
+      RECT ( 9.445 -0.085 ) ( 9.755 0.085 ) ;
+      RECT ( 9.925 -0.085 ) ( 10.235 0.085 ) ;
+      RECT ( 10.405 -0.085 ) ( 10.715 0.085 ) ;
+      RECT ( 10.885 -0.085 ) ( 11.195 0.085 ) ;
+      RECT ( 11.365 -0.085 ) ( 11.675 0.085 ) ;
+      RECT ( 11.845 -0.085 ) ( 12.155 0.085 ) ;
+      RECT ( 12.325 -0.085 ) ( 12.635 0.085 ) ;
+      RECT ( 12.805 -0.085 ) ( 12.96 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 12.96 -0.085 ) ;
 
   end
 END CLKBUF1
diff --git a/cells/lef/CLKBUF1.lef.temp b/cells/lef/CLKBUF1.lef.temp
index 89d0d9e..9be703c 100644
--- a/cells/lef/CLKBUF1.lef.temp
+++ b/cells/lef/CLKBUF1.lef.temp
@@ -38,9 +38,7 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 10.41500000 1.25000000 10.70500000 1.54000000 ;
-        RECT 10.49000000 1.54000000 10.63000000 2.19500000 ;
-        RECT 10.41500000 2.19500000 10.70500000 2.48500000 ;
+        RECT 10.41500000 0.44000000 10.70500000 0.73000000 ;
     END
   END Y
 
@@ -52,7 +50,9 @@
      CLASS CORE ;
        LAYER met1 ;
         RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
+        RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
         RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
+        RECT 2.81000000 1.54000000 2.95000000 1.78000000 ;
         RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
         RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
         RECT 1.37000000 2.07000000 1.51000000 2.67500000 ;
diff --git a/cells/lef/HAX1.lef.beforemagic b/cells/lef/HAX1.lef.beforemagic
deleted file mode 100644
index 0b06a8b..0000000
--- a/cells/lef/HAX1.lef.beforemagic
+++ /dev/null
@@ -1,397 +0,0 @@
-MACRO HAX1
- CLASS CORE ;
- FOREIGN HAX1 0 0 ;
- SIZE 15.84 BY 3.33 ;
- ORIGIN 0 0 ;
- SYMMETRY X Y R90 ;
- SITE unit ;
-  PIN vdd
-   DIRECTION INOUT ;
-   USE POWER ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 0.00000000 3.09000000 15.84000000 3.57000000 ;
-    END
-  END vdd
-
-  PIN gnd
-   DIRECTION INOUT ;
-   USE GROUND ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 0.00000000 -0.24000000 15.84000000 0.24000000 ;
-    END
-  END gnd
-
-  PIN YS
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 14.73500000 0.44000000 15.02500000 0.73000000 ;
-        RECT 14.81000000 0.73000000 14.95000000 2.19500000 ;
-        RECT 14.73500000 2.19500000 15.02500000 2.48500000 ;
-    END
-  END YS
-
-  PIN YC
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 0.57500000 0.44000000 0.86500000 0.73000000 ;
-        RECT 0.65000000 0.73000000 0.79000000 2.19500000 ;
-        RECT 0.57500000 2.19500000 0.86500000 2.48500000 ;
-    END
-  END YC
-
-  PIN B
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 4.25000000 0.51500000 10.15000000 0.65500000 ;
-        RECT 4.25000000 0.65500000 4.39000000 0.84500000 ;
-        RECT 10.01000000 0.65500000 10.15000000 0.84500000 ;
-        RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
-        RECT 9.93500000 0.84500000 10.22500000 1.13500000 ;
-        RECT 4.25000000 1.13500000 4.39000000 1.78000000 ;
-        RECT 10.01000000 1.13500000 10.15000000 1.78000000 ;
-        RECT 4.17500000 1.78000000 4.46500000 2.07000000 ;
-        RECT 9.93500000 1.78000000 10.22500000 2.07000000 ;
-    END
-  END B
-
-  PIN A
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 5.61500000 0.84500000 5.90500000 1.13500000 ;
-        RECT 5.69000000 1.13500000 5.83000000 1.78000000 ;
-        RECT 5.61500000 1.78000000 5.90500000 2.07000000 ;
-    END
-  END A
-
-
-  OBS
-    LAYER locali ;
-      RECT ( 7.84 3.07 ) ( 8.01 3.25 ) ;
-      RECT ( 1.76 2.99 ) ( 2.09 3.07 ) ;
-      RECT ( 1.76 2.82 ) ( 1.84 2.99 ) ;
-      RECT ( 2.01 2.82 ) ( 2.09 2.99 ) ;
-      RECT ( 1.76 2.74 ) ( 2.09 2.82 ) ;
-      RECT ( 4.64 2.99 ) ( 4.97 3.07 ) ;
-      RECT ( 4.64 2.82 ) ( 4.72 2.99 ) ;
-      RECT ( 4.89 2.82 ) ( 4.97 2.99 ) ;
-      RECT ( 7.76 2.99 ) ( 8.09 3.07 ) ;
-      RECT ( 4.64 2.74 ) ( 4.97 2.82 ) ;
-      RECT ( 7.76 2.82 ) ( 7.84 2.99 ) ;
-      RECT ( 8.01 2.82 ) ( 8.09 2.99 ) ;
-      RECT ( 7.76 2.74 ) ( 8.09 2.82 ) ;
-      RECT ( 11.84 2.99 ) ( 12.17 3.07 ) ;
-      RECT ( 11.84 2.82 ) ( 11.92 2.99 ) ;
-      RECT ( 12.09 2.82 ) ( 12.17 2.99 ) ;
-      RECT ( 11.84 2.74 ) ( 12.17 2.82 ) ;
-      RECT ( 13.52 2.99 ) ( 13.85 3.07 ) ;
-      RECT ( 13.52 2.82 ) ( 13.6 2.99 ) ;
-      RECT ( 13.77 2.82 ) ( 13.85 2.99 ) ;
-      RECT ( 13.52 2.74 ) ( 13.85 2.82 ) ;
-      RECT ( 0.56 2.43 ) ( 0.89 2.51 ) ;
-      RECT ( 0.56 2.26 ) ( 0.64 2.43 ) ;
-      RECT ( 0.81 2.26 ) ( 0.89 2.43 ) ;
-      RECT ( 0.56 2.18 ) ( 0.89 2.26 ) ;
-      RECT ( 3.44 2.43 ) ( 3.77 2.51 ) ;
-      RECT ( 3.44 2.26 ) ( 3.52 2.43 ) ;
-      RECT ( 3.69 2.26 ) ( 3.77 2.43 ) ;
-      RECT ( 3.44 2.18 ) ( 3.77 2.26 ) ;
-      RECT ( 5.68 2.09 ) ( 5.85 2.66 ) ;
-      RECT ( 6.08 2.43 ) ( 6.41 2.51 ) ;
-      RECT ( 6.08 2.26 ) ( 6.16 2.43 ) ;
-      RECT ( 6.33 2.26 ) ( 6.41 2.43 ) ;
-      RECT ( 6.08 2.18 ) ( 6.41 2.26 ) ;
-      RECT ( 9.44 2.43 ) ( 9.77 2.51 ) ;
-      RECT ( 9.44 2.26 ) ( 9.52 2.43 ) ;
-      RECT ( 9.69 2.26 ) ( 9.77 2.43 ) ;
-      RECT ( 14.72 2.43 ) ( 15.05 2.51 ) ;
-      RECT ( 14.72 2.26 ) ( 14.8 2.43 ) ;
-      RECT ( 14.97 2.26 ) ( 15.05 2.43 ) ;
-      RECT ( 9.44 2.18 ) ( 9.75 2.26 ) ;
-      RECT ( 14.74 2.18 ) ( 15.05 2.26 ) ;
-      RECT ( 1.28 2.01 ) ( 1.61 2.09 ) ;
-      RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
-      RECT ( 1.28 1.76 ) ( 1.61 1.84 ) ;
-      RECT ( 4.16 2.01 ) ( 4.49 2.09 ) ;
-      RECT ( 4.16 1.84 ) ( 4.24 2.01 ) ;
-      RECT ( 4.41 1.84 ) ( 4.49 2.01 ) ;
-      RECT ( 4.16 1.76 ) ( 4.49 1.84 ) ;
-      RECT ( 5.6 2.01 ) ( 5.91 2.09 ) ;
-      RECT ( 8.48 2.01 ) ( 8.81 2.09 ) ;
-      RECT ( 5.6 1.84 ) ( 5.68 2.01 ) ;
-      RECT ( 5.85 1.84 ) ( 5.93 2.01 ) ;
-      RECT ( 5.6 1.76 ) ( 5.93 1.84 ) ;
-      RECT ( 8.48 1.84 ) ( 8.56 2.01 ) ;
-      RECT ( 8.73 1.84 ) ( 8.81 2.01 ) ;
-      RECT ( 8.48 1.76 ) ( 8.81 1.84 ) ;
-      RECT ( 9.92 2.01 ) ( 10.25 2.09 ) ;
-      RECT ( 9.92 1.84 ) ( 10 2.01 ) ;
-      RECT ( 10.17 1.84 ) ( 10.25 2.01 ) ;
-      RECT ( 9.92 1.76 ) ( 10.25 1.84 ) ;
-      RECT ( 11.36 2.01 ) ( 11.69 2.09 ) ;
-      RECT ( 11.36 1.84 ) ( 11.44 2.01 ) ;
-      RECT ( 11.61 1.84 ) ( 11.69 2.01 ) ;
-      RECT ( 11.36 1.76 ) ( 11.69 1.84 ) ;
-      RECT ( 14.24 2.01 ) ( 14.57 2.09 ) ;
-      RECT ( 14.24 1.84 ) ( 14.32 2.01 ) ;
-      RECT ( 14.49 1.84 ) ( 14.57 2.01 ) ;
-      RECT ( 14.24 1.76 ) ( 14.57 1.84 ) ;
-      RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
-      RECT ( 1.28 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
-      RECT ( 1.28 0.83 ) ( 1.61 0.91 ) ;
-      RECT ( 4.16 1.08 ) ( 4.49 1.16 ) ;
-      RECT ( 4.16 0.91 ) ( 4.24 1.08 ) ;
-      RECT ( 4.41 0.91 ) ( 4.49 1.08 ) ;
-      RECT ( 4.16 0.83 ) ( 4.49 0.91 ) ;
-      RECT ( 5.6 1.08 ) ( 5.93 1.16 ) ;
-      RECT ( 5.6 0.91 ) ( 5.68 1.08 ) ;
-      RECT ( 5.85 0.91 ) ( 5.93 1.08 ) ;
-      RECT ( 5.6 0.83 ) ( 5.93 0.91 ) ;
-      RECT ( 8.48 1.08 ) ( 8.81 1.16 ) ;
-      RECT ( 8.48 0.91 ) ( 8.56 1.08 ) ;
-      RECT ( 8.73 0.91 ) ( 8.81 1.08 ) ;
-      RECT ( 8.48 0.83 ) ( 8.81 0.91 ) ;
-      RECT ( 9.92 1.08 ) ( 10.25 1.16 ) ;
-      RECT ( 9.92 0.91 ) ( 10 1.08 ) ;
-      RECT ( 10.17 0.91 ) ( 10.25 1.08 ) ;
-      RECT ( 9.92 0.83 ) ( 10.25 0.91 ) ;
-      RECT ( 11.36 1.08 ) ( 11.69 1.16 ) ;
-      RECT ( 11.36 0.91 ) ( 11.44 1.08 ) ;
-      RECT ( 11.61 0.91 ) ( 11.69 1.08 ) ;
-      RECT ( 11.36 0.83 ) ( 11.69 0.91 ) ;
-      RECT ( 14.24 1.08 ) ( 14.57 1.16 ) ;
-      RECT ( 14.24 0.91 ) ( 14.32 1.08 ) ;
-      RECT ( 14.49 0.92 ) ( 14.57 1.08 ) ;
-      RECT ( 14.49 0.91 ) ( 14.55 0.92 ) ;
-      RECT ( 14.24 0.83 ) ( 14.55 0.91 ) ;
-      RECT ( 0.56 0.67 ) ( 0.89 0.75 ) ;
-      RECT ( 0.56 0.5 ) ( 0.64 0.67 ) ;
-      RECT ( 0.81 0.5 ) ( 0.89 0.67 ) ;
-      RECT ( 3.44 0.67 ) ( 3.77 0.75 ) ;
-      RECT ( 0.56 0.42 ) ( 0.89 0.5 ) ;
-      RECT ( 1.76 0.51 ) ( 2.09 0.59 ) ;
-      RECT ( 1.76 0.34 ) ( 1.84 0.51 ) ;
-      RECT ( 2.01 0.34 ) ( 2.09 0.51 ) ;
-      RECT ( 3.44 0.5 ) ( 3.52 0.67 ) ;
-      RECT ( 3.69 0.5 ) ( 3.77 0.67 ) ;
-      RECT ( 10.42 0.67 ) ( 10.73 0.75 ) ;
-      RECT ( 10.42 0.66 ) ( 10.48 0.67 ) ;
-      RECT ( 3.44 0.42 ) ( 3.77 0.5 ) ;
-      RECT ( 6.08 0.51 ) ( 6.41 0.59 ) ;
-      RECT ( 1.76 0.26 ) ( 2.09 0.34 ) ;
-      RECT ( 6.08 0.34 ) ( 6.16 0.51 ) ;
-      RECT ( 6.33 0.34 ) ( 6.41 0.51 ) ;
-      RECT ( 6.08 0.26 ) ( 6.41 0.34 ) ;
-      RECT ( 7.76 0.51 ) ( 8.09 0.59 ) ;
-      RECT ( 7.76 0.34 ) ( 7.84 0.51 ) ;
-      RECT ( 8.01 0.34 ) ( 8.09 0.51 ) ;
-      RECT ( 7.76 0.26 ) ( 8.09 0.34 ) ;
-      RECT ( 9.44 0.51 ) ( 9.77 0.59 ) ;
-      RECT ( 9.44 0.34 ) ( 9.52 0.51 ) ;
-      RECT ( 9.69 0.34 ) ( 9.77 0.51 ) ;
-      RECT ( 10.4 0.5 ) ( 10.48 0.66 ) ;
-      RECT ( 10.65 0.5 ) ( 10.73 0.67 ) ;
-      RECT ( 14.72 0.67 ) ( 15.05 0.75 ) ;
-      RECT ( 10.4 0.42 ) ( 10.73 0.5 ) ;
-      RECT ( 11.84 0.51 ) ( 12.17 0.59 ) ;
-      RECT ( 9.44 0.26 ) ( 9.77 0.34 ) ;
-      RECT ( 11.84 0.34 ) ( 11.92 0.51 ) ;
-      RECT ( 12.09 0.34 ) ( 12.17 0.51 ) ;
-      RECT ( 11.84 0.26 ) ( 12.17 0.34 ) ;
-      RECT ( 13.52 0.51 ) ( 13.85 0.59 ) ;
-      RECT ( 13.52 0.34 ) ( 13.6 0.51 ) ;
-      RECT ( 13.77 0.34 ) ( 13.85 0.51 ) ;
-      RECT ( 14.72 0.5 ) ( 14.8 0.67 ) ;
-      RECT ( 14.97 0.5 ) ( 15.05 0.67 ) ;
-      RECT ( 14.72 0.42 ) ( 15.05 0.5 ) ;
-      RECT ( 13.52 0.26 ) ( 13.85 0.34 ) ;
-      RECT ( 6.16 0.09 ) ( 6.33 0.26 ) ;
-      RECT ( 7.84 0.09 ) ( 8.01 0.26 ) ;
-      RECT ( 9.52 0.09 ) ( 9.69 0.26 ) ;
-      RECT ( 11.92 0.09 ) ( 12.09 0.26 ) ;
-      RECT ( 9.52 -0.09 ) ( 12.09 0.09 ) ;
-      RECT ( 13.6 0.09 ) ( 13.77 0.26 ) ;
-    LAYER metal1 ;
-      RECT ( 0 3.42 ) ( 15.84 3.57 ) ;
-      RECT ( 0 3.25 ) ( 7.84 3.42 ) ;
-      RECT ( 8.01 3.25 ) ( 15.84 3.42 ) ;
-      RECT ( 0 3.09 ) ( 15.84 3.25 ) ;
-      RECT ( 1.78 2.99 ) ( 2.07 3.09 ) ;
-      RECT ( 1.78 2.82 ) ( 1.84 2.99 ) ;
-      RECT ( 2.01 2.82 ) ( 2.07 2.99 ) ;
-      RECT ( 1.78 2.76 ) ( 2.07 2.82 ) ;
-      RECT ( 4.66 2.99 ) ( 4.95 3.09 ) ;
-      RECT ( 4.66 2.82 ) ( 4.72 2.99 ) ;
-      RECT ( 4.89 2.82 ) ( 4.95 2.99 ) ;
-      RECT ( 11.86 2.99 ) ( 12.15 3.09 ) ;
-      RECT ( 4.66 2.76 ) ( 4.95 2.82 ) ;
-      RECT ( 5.62 2.83 ) ( 5.91 2.89 ) ;
-      RECT ( 5.62 2.66 ) ( 5.68 2.83 ) ;
-      RECT ( 5.85 2.82 ) ( 5.91 2.83 ) ;
-      RECT ( 11.86 2.82 ) ( 11.92 2.99 ) ;
-      RECT ( 12.09 2.82 ) ( 12.15 2.99 ) ;
-      RECT ( 5.85 2.68 ) ( 11.59 2.82 ) ;
-      RECT ( 11.86 2.76 ) ( 12.15 2.82 ) ;
-      RECT ( 13.54 2.99 ) ( 13.83 3.09 ) ;
-      RECT ( 13.54 2.82 ) ( 13.6 2.99 ) ;
-      RECT ( 13.77 2.82 ) ( 13.83 2.99 ) ;
-      RECT ( 13.54 2.76 ) ( 13.83 2.82 ) ;
-      RECT ( 5.85 2.66 ) ( 5.91 2.68 ) ;
-      RECT ( 5.62 2.6 ) ( 5.91 2.66 ) ;
-      RECT ( 0.58 2.43 ) ( 0.87 2.49 ) ;
-      RECT ( 0.58 2.26 ) ( 0.64 2.43 ) ;
-      RECT ( 0.81 2.26 ) ( 0.87 2.43 ) ;
-      RECT ( 0.58 2.2 ) ( 0.87 2.26 ) ;
-      RECT ( 3.46 2.43 ) ( 3.75 2.49 ) ;
-      RECT ( 3.46 2.26 ) ( 3.52 2.43 ) ;
-      RECT ( 3.69 2.41 ) ( 3.75 2.43 ) ;
-      RECT ( 6.1 2.43 ) ( 6.39 2.49 ) ;
-      RECT ( 6.1 2.41 ) ( 6.16 2.43 ) ;
-      RECT ( 3.69 2.27 ) ( 6.16 2.41 ) ;
-      RECT ( 3.69 2.26 ) ( 3.75 2.27 ) ;
-      RECT ( 3.46 2.2 ) ( 3.75 2.26 ) ;
-      RECT ( 6.1 2.26 ) ( 6.16 2.27 ) ;
-      RECT ( 6.33 2.41 ) ( 6.39 2.43 ) ;
-      RECT ( 9.46 2.43 ) ( 9.75 2.49 ) ;
-      RECT ( 6.33 2.27 ) ( 8.71 2.41 ) ;
-      RECT ( 6.33 2.26 ) ( 6.39 2.27 ) ;
-      RECT ( 6.1 2.2 ) ( 6.39 2.26 ) ;
-      RECT ( 0.65 0.73 ) ( 0.79 2.2 ) ;
-      RECT ( 1.3 2.01 ) ( 1.59 2.07 ) ;
-      RECT ( 1.3 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.59 2.01 ) ;
-      RECT ( 1.3 1.78 ) ( 1.59 1.84 ) ;
-      RECT ( 1.37 1.14 ) ( 1.51 1.78 ) ;
-      RECT ( 1.3 1.08 ) ( 1.59 1.14 ) ;
-      RECT ( 1.3 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 1.06 ) ( 1.59 1.08 ) ;
-      RECT ( 3.53 1.06 ) ( 3.67 2.2 ) ;
-      RECT ( 8.57 2.07 ) ( 8.71 2.27 ) ;
-      RECT ( 9.46 2.26 ) ( 9.52 2.43 ) ;
-      RECT ( 9.69 2.41 ) ( 9.75 2.43 ) ;
-      RECT ( 9.69 2.27 ) ( 10.63 2.41 ) ;
-      RECT ( 9.69 2.26 ) ( 9.75 2.27 ) ;
-      RECT ( 9.46 2.2 ) ( 9.75 2.26 ) ;
-      RECT ( 4.18 2.01 ) ( 4.47 2.07 ) ;
-      RECT ( 4.18 1.84 ) ( 4.24 2.01 ) ;
-      RECT ( 4.41 1.84 ) ( 4.47 2.01 ) ;
-      RECT ( 4.18 1.78 ) ( 4.47 1.84 ) ;
-      RECT ( 5.62 2.01 ) ( 5.91 2.07 ) ;
-      RECT ( 5.62 1.84 ) ( 5.68 2.01 ) ;
-      RECT ( 5.85 1.84 ) ( 5.91 2.01 ) ;
-      RECT ( 5.62 1.78 ) ( 5.91 1.84 ) ;
-      RECT ( 8.5 2.01 ) ( 8.79 2.07 ) ;
-      RECT ( 8.5 1.84 ) ( 8.56 2.01 ) ;
-      RECT ( 8.73 1.84 ) ( 8.79 2.01 ) ;
-      RECT ( 8.5 1.78 ) ( 8.79 1.84 ) ;
-      RECT ( 9.94 2.01 ) ( 10.23 2.07 ) ;
-      RECT ( 9.94 1.84 ) ( 10 2.01 ) ;
-      RECT ( 10.17 1.84 ) ( 10.23 2.01 ) ;
-      RECT ( 9.94 1.78 ) ( 10.23 1.84 ) ;
-      RECT ( 4.25 1.14 ) ( 4.39 1.78 ) ;
-      RECT ( 5.69 1.14 ) ( 5.83 1.78 ) ;
-      RECT ( 8.57 1.14 ) ( 8.71 1.78 ) ;
-      RECT ( 10.01 1.14 ) ( 10.15 1.78 ) ;
-      RECT ( 1.53 0.92 ) ( 3.67 1.06 ) ;
-      RECT ( 1.53 0.91 ) ( 1.59 0.92 ) ;
-      RECT ( 1.3 0.85 ) ( 1.59 0.91 ) ;
-      RECT ( 3.53 0.73 ) ( 3.67 0.92 ) ;
-      RECT ( 4.18 1.08 ) ( 4.47 1.14 ) ;
-      RECT ( 4.18 0.91 ) ( 4.24 1.08 ) ;
-      RECT ( 4.41 0.91 ) ( 4.47 1.08 ) ;
-      RECT ( 4.18 0.85 ) ( 4.47 0.91 ) ;
-      RECT ( 5.62 1.08 ) ( 5.91 1.14 ) ;
-      RECT ( 5.62 0.91 ) ( 5.68 1.08 ) ;
-      RECT ( 5.85 0.91 ) ( 5.91 1.08 ) ;
-      RECT ( 5.62 0.85 ) ( 5.91 0.91 ) ;
-      RECT ( 8.5 1.08 ) ( 8.79 1.14 ) ;
-      RECT ( 8.5 0.91 ) ( 8.56 1.08 ) ;
-      RECT ( 8.73 0.91 ) ( 8.79 1.08 ) ;
-      RECT ( 8.5 0.85 ) ( 8.79 0.91 ) ;
-      RECT ( 9.94 1.08 ) ( 10.23 1.14 ) ;
-      RECT ( 9.94 0.91 ) ( 10 1.08 ) ;
-      RECT ( 10.17 0.91 ) ( 10.23 1.08 ) ;
-      RECT ( 9.94 0.85 ) ( 10.23 0.91 ) ;
-      RECT ( 0.58 0.67 ) ( 0.87 0.73 ) ;
-      RECT ( 0.58 0.5 ) ( 0.64 0.67 ) ;
-      RECT ( 0.81 0.5 ) ( 0.87 0.67 ) ;
-      RECT ( 3.46 0.67 ) ( 3.75 0.73 ) ;
-      RECT ( 0.58 0.44 ) ( 0.87 0.5 ) ;
-      RECT ( 1.78 0.51 ) ( 2.07 0.57 ) ;
-      RECT ( 1.78 0.34 ) ( 1.84 0.51 ) ;
-      RECT ( 2.01 0.34 ) ( 2.07 0.51 ) ;
-      RECT ( 3.46 0.5 ) ( 3.52 0.67 ) ;
-      RECT ( 3.69 0.5 ) ( 3.75 0.67 ) ;
-      RECT ( 4.25 0.66 ) ( 4.39 0.85 ) ;
-      RECT ( 10.01 0.66 ) ( 10.15 0.85 ) ;
-      RECT ( 10.49 0.73 ) ( 10.63 2.27 ) ;
-      RECT ( 11.45 2.07 ) ( 11.59 2.68 ) ;
-      RECT ( 14.74 2.43 ) ( 15.03 2.49 ) ;
-      RECT ( 14.74 2.26 ) ( 14.8 2.43 ) ;
-      RECT ( 14.97 2.26 ) ( 15.03 2.43 ) ;
-      RECT ( 14.74 2.2 ) ( 15.03 2.26 ) ;
-      RECT ( 11.38 2.01 ) ( 11.67 2.07 ) ;
-      RECT ( 11.38 1.84 ) ( 11.44 2.01 ) ;
-      RECT ( 11.61 1.84 ) ( 11.67 2.01 ) ;
-      RECT ( 11.38 1.78 ) ( 11.67 1.84 ) ;
-      RECT ( 14.26 2.01 ) ( 14.55 2.07 ) ;
-      RECT ( 14.26 1.84 ) ( 14.32 2.01 ) ;
-      RECT ( 14.49 1.84 ) ( 14.55 2.01 ) ;
-      RECT ( 14.26 1.78 ) ( 14.55 1.84 ) ;
-      RECT ( 11.45 1.14 ) ( 11.59 1.78 ) ;
-      RECT ( 14.33 1.14 ) ( 14.47 1.78 ) ;
-      RECT ( 11.38 1.08 ) ( 11.67 1.14 ) ;
-      RECT ( 11.38 0.91 ) ( 11.44 1.08 ) ;
-      RECT ( 11.61 0.91 ) ( 11.67 1.08 ) ;
-      RECT ( 11.38 0.85 ) ( 11.67 0.91 ) ;
-      RECT ( 14.26 1.08 ) ( 14.55 1.14 ) ;
-      RECT ( 14.26 0.91 ) ( 14.32 1.08 ) ;
-      RECT ( 14.49 0.91 ) ( 14.55 1.08 ) ;
-      RECT ( 14.26 0.85 ) ( 14.55 0.91 ) ;
-      RECT ( 4.25 0.52 ) ( 10.15 0.66 ) ;
-      RECT ( 10.42 0.67 ) ( 10.71 0.73 ) ;
-      RECT ( 3.46 0.44 ) ( 3.75 0.5 ) ;
-      RECT ( 10.42 0.5 ) ( 10.48 0.67 ) ;
-      RECT ( 10.65 0.66 ) ( 10.71 0.67 ) ;
-      RECT ( 14.33 0.66 ) ( 14.47 0.85 ) ;
-      RECT ( 14.81 0.73 ) ( 14.95 2.2 ) ;
-      RECT ( 10.65 0.52 ) ( 14.47 0.66 ) ;
-      RECT ( 14.74 0.67 ) ( 15.03 0.73 ) ;
-      RECT ( 10.65 0.5 ) ( 10.71 0.52 ) ;
-      RECT ( 10.42 0.44 ) ( 10.71 0.5 ) ;
-      RECT ( 14.74 0.5 ) ( 14.8 0.67 ) ;
-      RECT ( 14.97 0.5 ) ( 15.03 0.67 ) ;
-      RECT ( 14.74 0.44 ) ( 15.03 0.5 ) ;
-      RECT ( 1.78 0.24 ) ( 2.07 0.34 ) ;
-      RECT ( 0 0.09 ) ( 15.84 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 6.16 0.09 ) ;
-      RECT ( 6.33 -0.09 ) ( 7.84 0.09 ) ;
-      RECT ( 8.01 -0.09 ) ( 13.6 0.09 ) ;
-      RECT ( 13.77 -0.09 ) ( 15.84 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 15.84 -0.09 ) ;
-
-  end
-END HAX1
diff --git a/cells/lef/INV.lef.beforemagic b/cells/lef/INV.lef.beforemagic
index 06ac30d..05cf158 100644
--- a/cells/lef/INV.lef.beforemagic
+++ b/cells/lef/INV.lef.beforemagic
@@ -61,12 +61,12 @@
   OBS
     LAYER li1 ;
       RECT ( 0 -0.24 ) ( 2.88 0.24 ) ;
-      RECT ( 1.76 0.24 ) ( 2.09 0.59 ) ;
-      RECT ( 0.56 0.42 ) ( 0.89 0.75 ) ;
-      RECT ( 1.28 0.83 ) ( 1.61 1.16 ) ;
-      RECT ( 1.28 1.76 ) ( 1.61 2.09 ) ;
-      RECT ( 0.56 2.18 ) ( 0.89 2.51 ) ;
-      RECT ( 1.76 2.74 ) ( 2.09 3.09 ) ;
+      RECT ( 1.755 0.24 ) ( 2.085 0.59 ) ;
+      RECT ( 0.555 0.42 ) ( 0.885 0.75 ) ;
+      RECT ( 1.275 0.825 ) ( 1.605 1.155 ) ;
+      RECT ( 1.275 1.76 ) ( 1.605 2.09 ) ;
+      RECT ( 0.555 2.175 ) ( 0.885 2.505 ) ;
+      RECT ( 1.755 2.74 ) ( 2.085 3.09 ) ;
       RECT ( 0 3.09 ) ( 2.88 3.57 ) ;
     LAYER li1 ;
     LAYER li1 ;
diff --git a/cells/lef/INVX1.lef.beforemagic b/cells/lef/INVX1.lef.beforemagic
index ced572e..21a3a3d 100644
--- a/cells/lef/INVX1.lef.beforemagic
+++ b/cells/lef/INVX1.lef.beforemagic
@@ -61,12 +61,12 @@
   OBS
     LAYER li1 ;
       RECT ( 0 -0.24 ) ( 2.88 0.24 ) ;
-      RECT ( 1.76 0.24 ) ( 2.09 0.59 ) ;
-      RECT ( 0.56 0.42 ) ( 0.89 0.75 ) ;
-      RECT ( 1.28 0.83 ) ( 1.61 1.16 ) ;
-      RECT ( 1.28 1.76 ) ( 1.61 2.09 ) ;
-      RECT ( 0.56 2.18 ) ( 0.89 2.51 ) ;
-      RECT ( 1.76 2.74 ) ( 2.09 3.09 ) ;
+      RECT ( 1.755 0.24 ) ( 2.085 0.59 ) ;
+      RECT ( 0.555 0.42 ) ( 0.885 0.75 ) ;
+      RECT ( 1.275 0.825 ) ( 1.605 1.155 ) ;
+      RECT ( 1.275 1.76 ) ( 1.605 2.09 ) ;
+      RECT ( 0.555 2.175 ) ( 0.885 2.505 ) ;
+      RECT ( 1.755 2.74 ) ( 2.085 3.09 ) ;
       RECT ( 0 3.09 ) ( 2.88 3.57 ) ;
     LAYER li1 ;
     LAYER li1 ;
diff --git a/cells/lef/INVX2.lef.beforemagic b/cells/lef/INVX2.lef.beforemagic
index 3da0cab..6de09f5 100644
--- a/cells/lef/INVX2.lef.beforemagic
+++ b/cells/lef/INVX2.lef.beforemagic
@@ -61,12 +61,12 @@
   OBS
     LAYER li1 ;
       RECT ( 0 -0.24 ) ( 2.88 0.24 ) ;
-      RECT ( 1.76 0.24 ) ( 2.09 0.59 ) ;
-      RECT ( 0.56 0.42 ) ( 0.89 0.75 ) ;
-      RECT ( 1.28 0.83 ) ( 1.61 1.16 ) ;
-      RECT ( 1.28 1.76 ) ( 1.61 2.09 ) ;
-      RECT ( 0.56 2.18 ) ( 0.89 2.51 ) ;
-      RECT ( 1.76 2.74 ) ( 2.09 3.09 ) ;
+      RECT ( 1.755 0.24 ) ( 2.085 0.59 ) ;
+      RECT ( 0.555 0.42 ) ( 0.885 0.75 ) ;
+      RECT ( 1.275 0.825 ) ( 1.605 1.155 ) ;
+      RECT ( 1.275 1.76 ) ( 1.605 2.09 ) ;
+      RECT ( 0.555 2.175 ) ( 0.885 2.505 ) ;
+      RECT ( 1.755 2.74 ) ( 2.085 3.09 ) ;
       RECT ( 0 3.09 ) ( 2.88 3.57 ) ;
     LAYER li1 ;
     LAYER li1 ;
diff --git a/cells/lef/INVX4.lef b/cells/lef/INVX4.lef
index b5c4d1a..38fb882 100644
--- a/cells/lef/INVX4.lef
+++ b/cells/lef/INVX4.lef
@@ -36,6 +36,10 @@
     SHAPE ABUTMENT ;
     PORT
       LAYER met1 ;
+        RECT 1.780 0.510 2.070 0.570 ;
+        RECT 1.780 0.340 1.840 0.510 ;
+        RECT 2.010 0.340 2.070 0.510 ;
+        RECT 1.780 0.240 2.070 0.340 ;
         RECT 0.000 -0.240 4.320 0.240 ;
     END
     PORT
@@ -53,15 +57,15 @@
     SHAPE ABUTMENT ;
     PORT
       LAYER met1 ;
-        RECT 0.580 2.200 0.870 2.490 ;
-        RECT 3.220 2.200 3.510 2.490 ;
+        RECT 0.580 2.410 0.870 2.490 ;
+        RECT 3.220 2.410 3.510 2.490 ;
+        RECT 0.580 2.270 3.510 2.410 ;
+        RECT 0.580 2.200 0.870 2.270 ;
+        RECT 3.220 2.200 3.510 2.270 ;
         RECT 0.650 0.730 0.790 2.200 ;
         RECT 3.290 0.730 3.430 2.200 ;
-        RECT 0.580 0.660 0.870 0.730 ;
-        RECT 3.220 0.660 3.510 0.730 ;
-        RECT 0.580 0.520 3.510 0.660 ;
-        RECT 0.580 0.440 0.870 0.520 ;
-        RECT 3.220 0.440 3.510 0.520 ;
+        RECT 0.580 0.440 0.870 0.730 ;
+        RECT 3.220 0.440 3.510 0.730 ;
     END
   END Y
   PIN A
@@ -70,15 +74,15 @@
     SHAPE ABUTMENT ;
     PORT
       LAYER met1 ;
-        RECT 1.300 1.780 1.590 2.070 ;
-        RECT 2.740 1.780 3.030 2.070 ;
+        RECT 1.300 2.000 1.590 2.070 ;
+        RECT 2.740 2.000 3.030 2.070 ;
+        RECT 1.300 1.860 3.030 2.000 ;
+        RECT 1.300 1.780 1.590 1.860 ;
+        RECT 2.740 1.780 3.030 1.860 ;
         RECT 1.370 1.140 1.510 1.780 ;
         RECT 2.810 1.140 2.950 1.780 ;
-        RECT 1.300 1.060 1.590 1.140 ;
-        RECT 2.740 1.060 3.030 1.140 ;
-        RECT 1.300 0.920 3.030 1.060 ;
-        RECT 1.300 0.850 1.590 0.920 ;
-        RECT 2.740 0.850 3.030 0.920 ;
+        RECT 1.300 0.850 1.590 1.140 ;
+        RECT 2.740 0.850 3.030 1.140 ;
     END
   END A
   OBS
diff --git a/cells/lef/INVX4.lef.beforemagic b/cells/lef/INVX4.lef.beforemagic
index 4f2852e..a58a39a 100644
--- a/cells/lef/INVX4.lef.beforemagic
+++ b/cells/lef/INVX4.lef.beforemagic
@@ -38,15 +38,15 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 0.57500000 0.44000000 0.86500000 0.51500000 ;
-        RECT 3.21500000 0.44000000 3.50500000 0.51500000 ;
-        RECT 0.57500000 0.51500000 3.50500000 0.65500000 ;
-        RECT 0.57500000 0.65500000 0.86500000 0.73000000 ;
-        RECT 3.21500000 0.65500000 3.50500000 0.73000000 ;
+        RECT 0.57500000 0.44000000 0.86500000 0.73000000 ;
+        RECT 3.21500000 0.44000000 3.50500000 0.73000000 ;
         RECT 0.65000000 0.73000000 0.79000000 2.19500000 ;
         RECT 3.29000000 0.73000000 3.43000000 2.19500000 ;
-        RECT 0.57500000 2.19500000 0.86500000 2.48500000 ;
-        RECT 3.21500000 2.19500000 3.50500000 2.48500000 ;
+        RECT 0.57500000 2.19500000 0.86500000 2.27000000 ;
+        RECT 3.21500000 2.19500000 3.50500000 2.27000000 ;
+        RECT 0.57500000 2.27000000 3.50500000 2.41000000 ;
+        RECT 0.57500000 2.41000000 0.86500000 2.48500000 ;
+        RECT 3.21500000 2.41000000 3.50500000 2.48500000 ;
     END
   END Y
 
@@ -57,157 +57,162 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 1.29500000 0.84500000 1.58500000 0.92000000 ;
-        RECT 2.73500000 0.84500000 3.02500000 0.92000000 ;
-        RECT 1.29500000 0.92000000 3.02500000 1.06000000 ;
-        RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
-        RECT 2.73500000 1.06000000 3.02500000 1.13500000 ;
+        RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
+        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
         RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
         RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
-        RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
-        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+        RECT 1.29500000 1.78000000 1.58500000 1.85500000 ;
+        RECT 2.73500000 1.78000000 3.02500000 1.85500000 ;
+        RECT 1.29500000 1.85500000 3.02500000 1.99500000 ;
+        RECT 1.29500000 1.99500000 1.58500000 2.07000000 ;
+        RECT 2.73500000 1.99500000 3.02500000 2.07000000 ;
     END
   END A
 
 
   OBS
     LAYER locali ;
-      RECT ( 0 3.42 ) ( 4.32 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.32 3.42 ) ;
-      RECT ( 0 3.09 ) ( 4.32 3.25 ) ;
-      RECT ( 1.76 2.99 ) ( 2.09 3.09 ) ;
-      RECT ( 1.76 2.82 ) ( 1.84 2.99 ) ;
-      RECT ( 2.01 2.82 ) ( 2.09 2.99 ) ;
-      RECT ( 1.76 2.74 ) ( 2.09 2.82 ) ;
-      RECT ( 0.56 2.43 ) ( 0.89 2.51 ) ;
-      RECT ( 0.56 2.26 ) ( 0.64 2.43 ) ;
-      RECT ( 0.81 2.26 ) ( 0.89 2.43 ) ;
-      RECT ( 0.56 2.18 ) ( 0.89 2.26 ) ;
-      RECT ( 3.2 2.43 ) ( 3.53 2.51 ) ;
-      RECT ( 3.2 2.26 ) ( 3.28 2.43 ) ;
-      RECT ( 3.45 2.26 ) ( 3.53 2.43 ) ;
-      RECT ( 3.2 2.18 ) ( 3.53 2.26 ) ;
-      RECT ( 1.28 2.01 ) ( 1.61 2.09 ) ;
-      RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
-      RECT ( 1.28 1.76 ) ( 1.61 1.84 ) ;
-      RECT ( 2.72 2.01 ) ( 3.03 2.09 ) ;
-      RECT ( 2.72 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.05 2.01 ) ;
-      RECT ( 2.72 1.76 ) ( 3.05 1.84 ) ;
-      RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
-      RECT ( 1.28 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
-      RECT ( 1.28 0.83 ) ( 1.61 0.91 ) ;
-      RECT ( 2.72 1.08 ) ( 3.05 1.16 ) ;
-      RECT ( 2.72 0.91 ) ( 2.8 1.08 ) ;
-      RECT ( 2.97 0.92 ) ( 3.05 1.08 ) ;
-      RECT ( 2.97 0.91 ) ( 3.03 0.92 ) ;
-      RECT ( 2.72 0.83 ) ( 3.03 0.91 ) ;
-      RECT ( 0.56 0.67 ) ( 0.89 0.75 ) ;
-      RECT ( 0.56 0.5 ) ( 0.64 0.67 ) ;
-      RECT ( 0.81 0.5 ) ( 0.89 0.67 ) ;
-      RECT ( 3.2 0.67 ) ( 3.53 0.75 ) ;
-      RECT ( 0.56 0.42 ) ( 0.89 0.5 ) ;
-      RECT ( 1.76 0.51 ) ( 2.09 0.59 ) ;
-      RECT ( 1.76 0.34 ) ( 1.84 0.51 ) ;
-      RECT ( 2.01 0.34 ) ( 2.09 0.51 ) ;
-      RECT ( 3.2 0.5 ) ( 3.28 0.67 ) ;
-      RECT ( 3.45 0.5 ) ( 3.53 0.67 ) ;
-      RECT ( 3.2 0.42 ) ( 3.53 0.5 ) ;
-      RECT ( 1.76 0.24 ) ( 2.09 0.34 ) ;
-      RECT ( 0 0.09 ) ( 4.32 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.32 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 4.32 -0.09 ) ;
+      RECT ( 0 3.415 ) ( 4.32 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.32 3.415 ) ;
+      RECT ( 0 3.09 ) ( 4.32 3.245 ) ;
+      RECT ( 1.755 2.99 ) ( 2.085 3.09 ) ;
+      RECT ( 1.755 2.82 ) ( 1.835 2.99 ) ;
+      RECT ( 2.005 2.82 ) ( 2.085 2.99 ) ;
+      RECT ( 1.755 2.74 ) ( 2.085 2.82 ) ;
+      RECT ( 0.555 2.425 ) ( 0.885 2.505 ) ;
+      RECT ( 0.555 2.255 ) ( 0.635 2.425 ) ;
+      RECT ( 0.805 2.255 ) ( 0.885 2.425 ) ;
+      RECT ( 0.555 2.175 ) ( 0.885 2.255 ) ;
+      RECT ( 3.195 2.425 ) ( 3.525 2.505 ) ;
+      RECT ( 3.195 2.255 ) ( 3.275 2.425 ) ;
+      RECT ( 3.445 2.255 ) ( 3.525 2.425 ) ;
+      RECT ( 3.195 2.175 ) ( 3.525 2.255 ) ;
+      RECT ( 1.275 2.01 ) ( 1.605 2.09 ) ;
+      RECT ( 1.275 1.84 ) ( 1.355 2.01 ) ;
+      RECT ( 1.525 1.84 ) ( 1.605 2.01 ) ;
+      RECT ( 1.275 1.76 ) ( 1.605 1.84 ) ;
+      RECT ( 2.715 2.01 ) ( 3.025 2.09 ) ;
+      RECT ( 2.715 1.84 ) ( 2.795 2.01 ) ;
+      RECT ( 2.965 2.005 ) ( 3.025 2.01 ) ;
+      RECT ( 2.965 1.84 ) ( 3.045 2.005 ) ;
+      RECT ( 2.715 1.76 ) ( 3.045 1.84 ) ;
+      RECT ( 1.275 1.075 ) ( 1.605 1.155 ) ;
+      RECT ( 1.275 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.905 ) ( 1.605 1.075 ) ;
+      RECT ( 1.275 0.825 ) ( 1.605 0.905 ) ;
+      RECT ( 2.715 1.075 ) ( 3.045 1.155 ) ;
+      RECT ( 2.715 0.905 ) ( 2.795 1.075 ) ;
+      RECT ( 2.965 0.92 ) ( 3.045 1.075 ) ;
+      RECT ( 2.965 0.905 ) ( 3.025 0.92 ) ;
+      RECT ( 2.715 0.825 ) ( 3.025 0.905 ) ;
+      RECT ( 0.555 0.67 ) ( 0.885 0.75 ) ;
+      RECT ( 0.555 0.5 ) ( 0.635 0.67 ) ;
+      RECT ( 0.805 0.5 ) ( 0.885 0.67 ) ;
+      RECT ( 3.195 0.67 ) ( 3.525 0.75 ) ;
+      RECT ( 0.555 0.42 ) ( 0.885 0.5 ) ;
+      RECT ( 1.755 0.51 ) ( 2.085 0.59 ) ;
+      RECT ( 1.755 0.34 ) ( 1.835 0.51 ) ;
+      RECT ( 2.005 0.34 ) ( 2.085 0.51 ) ;
+      RECT ( 3.195 0.5 ) ( 3.275 0.67 ) ;
+      RECT ( 3.445 0.5 ) ( 3.525 0.67 ) ;
+      RECT ( 3.195 0.42 ) ( 3.525 0.5 ) ;
+      RECT ( 1.755 0.24 ) ( 2.085 0.34 ) ;
+      RECT ( 0 0.085 ) ( 4.32 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.32 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 4.32 -0.085 ) ;
     LAYER metal1 ;
-      RECT ( 0 3.42 ) ( 4.32 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.32 3.42 ) ;
-      RECT ( 0 3.09 ) ( 4.32 3.25 ) ;
-      RECT ( 1.78 2.99 ) ( 2.07 3.09 ) ;
-      RECT ( 1.78 2.82 ) ( 1.84 2.99 ) ;
-      RECT ( 2.01 2.82 ) ( 2.07 2.99 ) ;
-      RECT ( 1.78 2.76 ) ( 2.07 2.82 ) ;
-      RECT ( 0.58 2.43 ) ( 0.87 2.49 ) ;
-      RECT ( 0.58 2.26 ) ( 0.64 2.43 ) ;
-      RECT ( 0.81 2.26 ) ( 0.87 2.43 ) ;
-      RECT ( 0.58 2.2 ) ( 0.87 2.26 ) ;
-      RECT ( 3.22 2.43 ) ( 3.51 2.49 ) ;
-      RECT ( 3.22 2.26 ) ( 3.28 2.43 ) ;
-      RECT ( 3.45 2.26 ) ( 3.51 2.43 ) ;
-      RECT ( 3.22 2.2 ) ( 3.51 2.26 ) ;
-      RECT ( 0.65 0.73 ) ( 0.79 2.2 ) ;
-      RECT ( 1.3 2.01 ) ( 1.59 2.07 ) ;
-      RECT ( 1.3 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.59 2.01 ) ;
-      RECT ( 1.3 1.78 ) ( 1.59 1.84 ) ;
-      RECT ( 2.74 2.01 ) ( 3.03 2.07 ) ;
-      RECT ( 2.74 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.03 2.01 ) ;
-      RECT ( 2.74 1.78 ) ( 3.03 1.84 ) ;
-      RECT ( 1.37 1.14 ) ( 1.51 1.78 ) ;
-      RECT ( 2.81 1.14 ) ( 2.95 1.78 ) ;
-      RECT ( 1.3 1.08 ) ( 1.59 1.14 ) ;
-      RECT ( 1.3 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 1.06 ) ( 1.59 1.08 ) ;
-      RECT ( 2.74 1.08 ) ( 3.03 1.14 ) ;
-      RECT ( 2.74 1.06 ) ( 2.8 1.08 ) ;
-      RECT ( 1.53 0.92 ) ( 2.8 1.06 ) ;
-      RECT ( 1.53 0.91 ) ( 1.59 0.92 ) ;
-      RECT ( 1.3 0.85 ) ( 1.59 0.91 ) ;
-      RECT ( 2.74 0.91 ) ( 2.8 0.92 ) ;
-      RECT ( 2.97 0.91 ) ( 3.03 1.08 ) ;
-      RECT ( 2.74 0.85 ) ( 3.03 0.91 ) ;
-      RECT ( 3.29 0.73 ) ( 3.43 2.2 ) ;
-      RECT ( 0.58 0.67 ) ( 0.87 0.73 ) ;
-      RECT ( 0.58 0.5 ) ( 0.64 0.67 ) ;
-      RECT ( 0.81 0.66 ) ( 0.87 0.67 ) ;
-      RECT ( 3.22 0.67 ) ( 3.51 0.73 ) ;
-      RECT ( 3.22 0.66 ) ( 3.28 0.67 ) ;
-      RECT ( 0.81 0.52 ) ( 3.28 0.66 ) ;
-      RECT ( 0.81 0.5 ) ( 0.87 0.52 ) ;
-      RECT ( 0.58 0.44 ) ( 0.87 0.5 ) ;
-      RECT ( 3.22 0.5 ) ( 3.28 0.52 ) ;
-      RECT ( 3.45 0.5 ) ( 3.51 0.67 ) ;
-      RECT ( 3.22 0.44 ) ( 3.51 0.5 ) ;
-      RECT ( 0 0.09 ) ( 4.32 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.32 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 4.32 -0.09 ) ;
+      RECT ( 0 3.415 ) ( 4.32 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.32 3.415 ) ;
+      RECT ( 0 3.09 ) ( 4.32 3.245 ) ;
+      RECT ( 1.775 2.99 ) ( 2.065 3.09 ) ;
+      RECT ( 1.775 2.82 ) ( 1.835 2.99 ) ;
+      RECT ( 2.005 2.82 ) ( 2.065 2.99 ) ;
+      RECT ( 1.775 2.76 ) ( 2.065 2.82 ) ;
+      RECT ( 0.575 2.425 ) ( 0.865 2.485 ) ;
+      RECT ( 0.575 2.255 ) ( 0.635 2.425 ) ;
+      RECT ( 0.805 2.41 ) ( 0.865 2.425 ) ;
+      RECT ( 3.215 2.425 ) ( 3.505 2.485 ) ;
+      RECT ( 3.215 2.41 ) ( 3.275 2.425 ) ;
+      RECT ( 0.805 2.27 ) ( 3.275 2.41 ) ;
+      RECT ( 0.805 2.255 ) ( 0.865 2.27 ) ;
+      RECT ( 0.575 2.195 ) ( 0.865 2.255 ) ;
+      RECT ( 3.215 2.255 ) ( 3.275 2.27 ) ;
+      RECT ( 3.445 2.255 ) ( 3.505 2.425 ) ;
+      RECT ( 3.215 2.195 ) ( 3.505 2.255 ) ;
+      RECT ( 0.65 0.73 ) ( 0.79 2.195 ) ;
+      RECT ( 1.295 2.01 ) ( 1.585 2.07 ) ;
+      RECT ( 1.295 1.84 ) ( 1.355 2.01 ) ;
+      RECT ( 1.525 1.995 ) ( 1.585 2.01 ) ;
+      RECT ( 2.735 2.01 ) ( 3.025 2.07 ) ;
+      RECT ( 2.735 1.995 ) ( 2.795 2.01 ) ;
+      RECT ( 1.525 1.855 ) ( 2.795 1.995 ) ;
+      RECT ( 1.525 1.84 ) ( 1.585 1.855 ) ;
+      RECT ( 1.295 1.78 ) ( 1.585 1.84 ) ;
+      RECT ( 2.735 1.84 ) ( 2.795 1.855 ) ;
+      RECT ( 2.965 1.84 ) ( 3.025 2.01 ) ;
+      RECT ( 2.735 1.78 ) ( 3.025 1.84 ) ;
+      RECT ( 1.37 1.135 ) ( 1.51 1.78 ) ;
+      RECT ( 2.81 1.135 ) ( 2.95 1.78 ) ;
+      RECT ( 1.295 1.075 ) ( 1.585 1.135 ) ;
+      RECT ( 1.295 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.905 ) ( 1.585 1.075 ) ;
+      RECT ( 1.295 0.845 ) ( 1.585 0.905 ) ;
+      RECT ( 2.735 1.075 ) ( 3.025 1.135 ) ;
+      RECT ( 2.735 0.905 ) ( 2.795 1.075 ) ;
+      RECT ( 2.965 0.905 ) ( 3.025 1.075 ) ;
+      RECT ( 2.735 0.845 ) ( 3.025 0.905 ) ;
+      RECT ( 3.29 0.73 ) ( 3.43 2.195 ) ;
+      RECT ( 0.575 0.67 ) ( 0.865 0.73 ) ;
+      RECT ( 0.575 0.5 ) ( 0.635 0.67 ) ;
+      RECT ( 0.805 0.5 ) ( 0.865 0.67 ) ;
+      RECT ( 3.215 0.67 ) ( 3.505 0.73 ) ;
+      RECT ( 0.575 0.44 ) ( 0.865 0.5 ) ;
+      RECT ( 1.775 0.51 ) ( 2.065 0.57 ) ;
+      RECT ( 1.775 0.34 ) ( 1.835 0.51 ) ;
+      RECT ( 2.005 0.34 ) ( 2.065 0.51 ) ;
+      RECT ( 3.215 0.5 ) ( 3.275 0.67 ) ;
+      RECT ( 3.445 0.5 ) ( 3.505 0.67 ) ;
+      RECT ( 3.215 0.44 ) ( 3.505 0.5 ) ;
+      RECT ( 1.775 0.24 ) ( 2.065 0.34 ) ;
+      RECT ( 0 0.085 ) ( 4.32 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.32 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 4.32 -0.085 ) ;
 
   end
 END INVX4
diff --git a/cells/lef/INVX4.lef.temp b/cells/lef/INVX4.lef.temp
index 67f9609..2f0a182 100644
--- a/cells/lef/INVX4.lef.temp
+++ b/cells/lef/INVX4.lef.temp
@@ -38,15 +38,15 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 0.57500000 0.44000000 0.86500000 0.51500000 ;
-        RECT 3.21500000 0.44000000 3.50500000 0.51500000 ;
-        RECT 0.57500000 0.51500000 3.50500000 0.65500000 ;
-        RECT 0.57500000 0.65500000 0.86500000 0.73000000 ;
-        RECT 3.21500000 0.65500000 3.50500000 0.73000000 ;
+        RECT 0.57500000 0.44000000 0.86500000 0.73000000 ;
+        RECT 3.21500000 0.44000000 3.50500000 0.73000000 ;
         RECT 0.65000000 0.73000000 0.79000000 2.19500000 ;
         RECT 3.29000000 0.73000000 3.43000000 2.19500000 ;
-        RECT 0.57500000 2.19500000 0.86500000 2.48500000 ;
-        RECT 3.21500000 2.19500000 3.50500000 2.48500000 ;
+        RECT 0.57500000 2.19500000 0.86500000 2.27000000 ;
+        RECT 3.21500000 2.19500000 3.50500000 2.27000000 ;
+        RECT 0.57500000 2.27000000 3.50500000 2.41000000 ;
+        RECT 0.57500000 2.41000000 0.86500000 2.48500000 ;
+        RECT 3.21500000 2.41000000 3.50500000 2.48500000 ;
     END
   END Y
 
@@ -57,15 +57,15 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 1.29500000 0.84500000 1.58500000 0.92000000 ;
-        RECT 2.73500000 0.84500000 3.02500000 0.92000000 ;
-        RECT 1.29500000 0.92000000 3.02500000 1.06000000 ;
-        RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
-        RECT 2.73500000 1.06000000 3.02500000 1.13500000 ;
+        RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
+        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
         RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
         RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
-        RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
-        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+        RECT 1.29500000 1.78000000 1.58500000 1.85500000 ;
+        RECT 2.73500000 1.78000000 3.02500000 1.85500000 ;
+        RECT 1.29500000 1.85500000 3.02500000 1.99500000 ;
+        RECT 1.29500000 1.99500000 1.58500000 2.07000000 ;
+        RECT 2.73500000 1.99500000 3.02500000 2.07000000 ;
     END
   END A
 
diff --git a/cells/lef/INVX8.lef b/cells/lef/INVX8.lef
index ff74ab3..aaea80a 100644
--- a/cells/lef/INVX8.lef
+++ b/cells/lef/INVX8.lef
@@ -65,19 +65,19 @@
     SHAPE ABUTMENT ;
     PORT
       LAYER met1 ;
-        RECT 0.820 2.200 1.110 2.490 ;
+        RECT 0.820 2.410 1.110 2.490 ;
         RECT 3.700 2.410 3.990 2.490 ;
         RECT 6.100 2.410 6.390 2.490 ;
-        RECT 3.700 2.270 6.390 2.410 ;
+        RECT 0.820 2.270 6.390 2.410 ;
+        RECT 0.820 2.200 1.110 2.270 ;
         RECT 3.700 2.200 3.990 2.270 ;
         RECT 6.100 2.200 6.390 2.270 ;
         RECT 0.890 0.730 1.030 2.200 ;
         RECT 6.170 0.730 6.310 2.200 ;
-        RECT 0.820 0.660 1.110 0.730 ;
+        RECT 0.820 0.440 1.110 0.730 ;
         RECT 3.700 0.660 3.990 0.730 ;
         RECT 6.100 0.660 6.390 0.730 ;
-        RECT 0.820 0.520 6.390 0.660 ;
-        RECT 0.820 0.440 1.110 0.520 ;
+        RECT 3.700 0.520 6.390 0.660 ;
         RECT 3.700 0.440 3.990 0.520 ;
         RECT 6.100 0.440 6.390 0.520 ;
     END
@@ -88,23 +88,23 @@
     SHAPE ABUTMENT ;
     PORT
       LAYER met1 ;
-        RECT 1.300 2.000 1.590 2.070 ;
-        RECT 2.740 2.000 3.030 2.070 ;
-        RECT 4.180 2.000 4.470 2.070 ;
-        RECT 5.620 2.000 5.910 2.070 ;
-        RECT 1.300 1.860 5.910 2.000 ;
-        RECT 1.300 1.780 1.590 1.860 ;
-        RECT 2.740 1.780 3.030 1.860 ;
-        RECT 4.180 1.780 4.470 1.860 ;
-        RECT 5.620 1.780 5.910 1.860 ;
+        RECT 1.300 1.780 1.590 2.070 ;
+        RECT 2.740 1.780 3.030 2.070 ;
+        RECT 4.180 1.780 4.470 2.070 ;
+        RECT 5.620 1.780 5.910 2.070 ;
         RECT 1.370 1.140 1.510 1.780 ;
         RECT 2.810 1.140 2.950 1.780 ;
         RECT 4.250 1.140 4.390 1.780 ;
         RECT 5.690 1.140 5.830 1.780 ;
-        RECT 1.300 0.850 1.590 1.140 ;
-        RECT 2.740 0.850 3.030 1.140 ;
-        RECT 4.180 0.850 4.470 1.140 ;
-        RECT 5.620 0.850 5.910 1.140 ;
+        RECT 1.300 1.060 1.590 1.140 ;
+        RECT 2.740 1.060 3.030 1.140 ;
+        RECT 4.180 1.060 4.470 1.140 ;
+        RECT 5.620 1.060 5.910 1.140 ;
+        RECT 1.300 0.920 5.910 1.060 ;
+        RECT 1.300 0.850 1.590 0.920 ;
+        RECT 2.740 0.850 3.030 0.920 ;
+        RECT 4.180 0.850 4.470 0.920 ;
+        RECT 5.620 0.850 5.910 0.920 ;
     END
   END A
   OBS
diff --git a/cells/lef/INVX8.lef.beforemagic b/cells/lef/INVX8.lef.beforemagic
index d6d38ea..d94a2ad 100644
--- a/cells/lef/INVX8.lef.beforemagic
+++ b/cells/lef/INVX8.lef.beforemagic
@@ -38,19 +38,19 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 0.81500000 0.44000000 1.10500000 0.51500000 ;
         RECT 3.69500000 0.44000000 3.98500000 0.51500000 ;
         RECT 6.09500000 0.44000000 6.38500000 0.51500000 ;
-        RECT 0.81500000 0.51500000 6.38500000 0.65500000 ;
-        RECT 0.81500000 0.65500000 1.10500000 0.73000000 ;
+        RECT 3.69500000 0.51500000 6.38500000 0.65500000 ;
+        RECT 0.81500000 0.44000000 1.10500000 0.73000000 ;
         RECT 3.69500000 0.65500000 3.98500000 0.73000000 ;
         RECT 6.09500000 0.65500000 6.38500000 0.73000000 ;
         RECT 0.89000000 0.73000000 1.03000000 2.19500000 ;
         RECT 6.17000000 0.73000000 6.31000000 2.19500000 ;
+        RECT 0.81500000 2.19500000 1.10500000 2.27000000 ;
         RECT 3.69500000 2.19500000 3.98500000 2.27000000 ;
         RECT 6.09500000 2.19500000 6.38500000 2.27000000 ;
-        RECT 3.69500000 2.27000000 6.38500000 2.41000000 ;
-        RECT 0.81500000 2.19500000 1.10500000 2.48500000 ;
+        RECT 0.81500000 2.27000000 6.38500000 2.41000000 ;
+        RECT 0.81500000 2.41000000 1.10500000 2.48500000 ;
         RECT 3.69500000 2.41000000 3.98500000 2.48500000 ;
         RECT 6.09500000 2.41000000 6.38500000 2.48500000 ;
     END
@@ -63,265 +63,268 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
-        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
-        RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
-        RECT 5.61500000 0.84500000 5.90500000 1.13500000 ;
+        RECT 1.29500000 0.84500000 1.58500000 0.92000000 ;
+        RECT 2.73500000 0.84500000 3.02500000 0.92000000 ;
+        RECT 4.17500000 0.84500000 4.46500000 0.92000000 ;
+        RECT 5.61500000 0.84500000 5.90500000 0.92000000 ;
+        RECT 1.29500000 0.92000000 5.90500000 1.06000000 ;
+        RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
+        RECT 2.73500000 1.06000000 3.02500000 1.13500000 ;
+        RECT 4.17500000 1.06000000 4.46500000 1.13500000 ;
+        RECT 5.61500000 1.06000000 5.90500000 1.13500000 ;
         RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
         RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
         RECT 4.25000000 1.13500000 4.39000000 1.78000000 ;
         RECT 5.69000000 1.13500000 5.83000000 1.78000000 ;
-        RECT 1.29500000 1.78000000 1.58500000 1.85500000 ;
-        RECT 2.73500000 1.78000000 3.02500000 1.85500000 ;
-        RECT 4.17500000 1.78000000 4.46500000 1.85500000 ;
-        RECT 5.61500000 1.78000000 5.90500000 1.85500000 ;
-        RECT 1.29500000 1.85500000 5.90500000 1.99500000 ;
-        RECT 1.29500000 1.99500000 1.58500000 2.07000000 ;
-        RECT 2.73500000 1.99500000 3.02500000 2.07000000 ;
-        RECT 4.17500000 1.99500000 4.46500000 2.07000000 ;
-        RECT 5.61500000 1.99500000 5.90500000 2.07000000 ;
+        RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
+        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+        RECT 4.17500000 1.78000000 4.46500000 2.07000000 ;
+        RECT 5.61500000 1.78000000 5.90500000 2.07000000 ;
     END
   END A
 
 
   OBS
     LAYER locali ;
-      RECT ( 0 3.42 ) ( 7.2 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
-      RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
-      RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
-      RECT ( 5.61 3.25 ) ( 5.92 3.42 ) ;
-      RECT ( 6.09 3.25 ) ( 6.4 3.42 ) ;
-      RECT ( 6.57 3.25 ) ( 6.88 3.42 ) ;
-      RECT ( 7.05 3.25 ) ( 7.2 3.42 ) ;
-      RECT ( 0 3.09 ) ( 7.2 3.25 ) ;
-      RECT ( 1.76 2.99 ) ( 2.09 3.09 ) ;
-      RECT ( 1.76 2.82 ) ( 1.84 2.99 ) ;
-      RECT ( 2.01 2.82 ) ( 2.09 2.99 ) ;
-      RECT ( 1.76 2.74 ) ( 2.09 2.82 ) ;
-      RECT ( 4.64 2.99 ) ( 4.97 3.09 ) ;
-      RECT ( 4.64 2.82 ) ( 4.72 2.99 ) ;
-      RECT ( 4.89 2.82 ) ( 4.97 2.99 ) ;
-      RECT ( 4.64 2.74 ) ( 4.97 2.82 ) ;
-      RECT ( 0.8 2.43 ) ( 1.13 2.51 ) ;
-      RECT ( 0.8 2.26 ) ( 0.88 2.43 ) ;
-      RECT ( 1.05 2.26 ) ( 1.13 2.43 ) ;
-      RECT ( 0.8 2.18 ) ( 1.13 2.26 ) ;
-      RECT ( 3.68 2.43 ) ( 4.01 2.51 ) ;
-      RECT ( 3.68 2.26 ) ( 3.76 2.43 ) ;
-      RECT ( 3.93 2.26 ) ( 4.01 2.43 ) ;
-      RECT ( 6.08 2.43 ) ( 6.41 2.51 ) ;
-      RECT ( 6.08 2.26 ) ( 6.16 2.43 ) ;
-      RECT ( 6.33 2.26 ) ( 6.41 2.43 ) ;
-      RECT ( 3.68 2.18 ) ( 3.99 2.26 ) ;
-      RECT ( 6.1 2.18 ) ( 6.41 2.26 ) ;
-      RECT ( 1.3 2.01 ) ( 1.61 2.09 ) ;
-      RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
-      RECT ( 1.28 1.76 ) ( 1.61 1.84 ) ;
-      RECT ( 2.72 2.01 ) ( 3.05 2.09 ) ;
-      RECT ( 2.72 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.05 2.01 ) ;
-      RECT ( 2.72 1.76 ) ( 3.05 1.84 ) ;
-      RECT ( 4.16 2.01 ) ( 4.49 2.09 ) ;
-      RECT ( 4.16 1.84 ) ( 4.24 2.01 ) ;
-      RECT ( 4.41 1.84 ) ( 4.49 2.01 ) ;
-      RECT ( 4.16 1.76 ) ( 4.49 1.84 ) ;
-      RECT ( 5.6 2.01 ) ( 5.93 2.09 ) ;
-      RECT ( 5.6 1.84 ) ( 5.68 2.01 ) ;
-      RECT ( 5.85 1.84 ) ( 5.93 2.01 ) ;
-      RECT ( 5.6 1.76 ) ( 5.93 1.84 ) ;
-      RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
-      RECT ( 1.28 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
-      RECT ( 1.28 0.83 ) ( 1.61 0.91 ) ;
-      RECT ( 2.72 1.08 ) ( 3.05 1.16 ) ;
-      RECT ( 2.72 0.91 ) ( 2.8 1.08 ) ;
-      RECT ( 2.97 0.91 ) ( 3.05 1.08 ) ;
-      RECT ( 4.16 1.08 ) ( 4.49 1.16 ) ;
-      RECT ( 4.16 0.92 ) ( 4.24 1.08 ) ;
-      RECT ( 2.72 0.83 ) ( 3.05 0.91 ) ;
-      RECT ( 4.18 0.91 ) ( 4.24 0.92 ) ;
-      RECT ( 4.41 0.91 ) ( 4.49 1.08 ) ;
-      RECT ( 4.18 0.83 ) ( 4.49 0.91 ) ;
-      RECT ( 5.6 1.08 ) ( 5.93 1.16 ) ;
-      RECT ( 5.6 0.91 ) ( 5.68 1.08 ) ;
-      RECT ( 5.85 0.91 ) ( 5.93 1.08 ) ;
-      RECT ( 5.6 0.83 ) ( 5.93 0.91 ) ;
-      RECT ( 0.8 0.67 ) ( 1.11 0.75 ) ;
-      RECT ( 0.8 0.5 ) ( 0.88 0.67 ) ;
-      RECT ( 1.05 0.66 ) ( 1.11 0.67 ) ;
-      RECT ( 3.68 0.67 ) ( 4.01 0.75 ) ;
-      RECT ( 1.05 0.5 ) ( 1.13 0.66 ) ;
-      RECT ( 0.8 0.42 ) ( 1.13 0.5 ) ;
-      RECT ( 1.76 0.51 ) ( 2.09 0.59 ) ;
-      RECT ( 1.76 0.34 ) ( 1.84 0.51 ) ;
-      RECT ( 2.01 0.34 ) ( 2.09 0.51 ) ;
-      RECT ( 3.68 0.5 ) ( 3.76 0.67 ) ;
-      RECT ( 3.93 0.5 ) ( 4.01 0.67 ) ;
-      RECT ( 6.1 0.67 ) ( 6.41 0.75 ) ;
-      RECT ( 6.1 0.66 ) ( 6.16 0.67 ) ;
-      RECT ( 3.68 0.42 ) ( 4.01 0.5 ) ;
-      RECT ( 4.64 0.51 ) ( 4.97 0.59 ) ;
-      RECT ( 1.76 0.24 ) ( 2.09 0.34 ) ;
-      RECT ( 4.64 0.34 ) ( 4.72 0.51 ) ;
-      RECT ( 4.89 0.34 ) ( 4.97 0.51 ) ;
-      RECT ( 6.08 0.5 ) ( 6.16 0.66 ) ;
-      RECT ( 6.33 0.5 ) ( 6.41 0.67 ) ;
-      RECT ( 6.08 0.42 ) ( 6.41 0.5 ) ;
-      RECT ( 4.64 0.24 ) ( 4.97 0.34 ) ;
-      RECT ( 0 0.09 ) ( 7.2 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
-      RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
-      RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
-      RECT ( 5.61 -0.09 ) ( 5.92 0.09 ) ;
-      RECT ( 6.09 -0.09 ) ( 6.4 0.09 ) ;
-      RECT ( 6.57 -0.09 ) ( 6.88 0.09 ) ;
-      RECT ( 7.05 -0.09 ) ( 7.2 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 7.2 -0.09 ) ;
+      RECT ( 0 3.415 ) ( 7.2 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.475 3.415 ) ;
+      RECT ( 4.645 3.245 ) ( 4.955 3.415 ) ;
+      RECT ( 5.125 3.245 ) ( 5.435 3.415 ) ;
+      RECT ( 5.605 3.245 ) ( 5.915 3.415 ) ;
+      RECT ( 6.085 3.245 ) ( 6.395 3.415 ) ;
+      RECT ( 6.565 3.245 ) ( 6.875 3.415 ) ;
+      RECT ( 7.045 3.245 ) ( 7.2 3.415 ) ;
+      RECT ( 0 3.09 ) ( 7.2 3.245 ) ;
+      RECT ( 1.755 2.99 ) ( 2.085 3.09 ) ;
+      RECT ( 1.755 2.82 ) ( 1.835 2.99 ) ;
+      RECT ( 2.005 2.82 ) ( 2.085 2.99 ) ;
+      RECT ( 1.755 2.74 ) ( 2.085 2.82 ) ;
+      RECT ( 4.635 2.99 ) ( 4.965 3.09 ) ;
+      RECT ( 4.635 2.82 ) ( 4.715 2.99 ) ;
+      RECT ( 4.885 2.82 ) ( 4.965 2.99 ) ;
+      RECT ( 4.635 2.74 ) ( 4.965 2.82 ) ;
+      RECT ( 0.795 2.425 ) ( 1.125 2.505 ) ;
+      RECT ( 0.795 2.255 ) ( 0.875 2.425 ) ;
+      RECT ( 1.045 2.255 ) ( 1.125 2.425 ) ;
+      RECT ( 0.795 2.175 ) ( 1.125 2.255 ) ;
+      RECT ( 3.675 2.425 ) ( 4.005 2.505 ) ;
+      RECT ( 3.675 2.255 ) ( 3.755 2.425 ) ;
+      RECT ( 3.925 2.26 ) ( 4.005 2.425 ) ;
+      RECT ( 6.075 2.425 ) ( 6.405 2.505 ) ;
+      RECT ( 6.075 2.26 ) ( 6.155 2.425 ) ;
+      RECT ( 3.925 2.255 ) ( 3.985 2.26 ) ;
+      RECT ( 3.675 2.175 ) ( 3.985 2.255 ) ;
+      RECT ( 6.095 2.255 ) ( 6.155 2.26 ) ;
+      RECT ( 6.325 2.255 ) ( 6.405 2.425 ) ;
+      RECT ( 6.095 2.175 ) ( 6.405 2.255 ) ;
+      RECT ( 1.295 2.01 ) ( 1.605 2.09 ) ;
+      RECT ( 1.295 2.005 ) ( 1.355 2.01 ) ;
+      RECT ( 1.275 1.84 ) ( 1.355 2.005 ) ;
+      RECT ( 1.525 1.84 ) ( 1.605 2.01 ) ;
+      RECT ( 1.275 1.76 ) ( 1.605 1.84 ) ;
+      RECT ( 2.715 2.01 ) ( 3.045 2.09 ) ;
+      RECT ( 2.715 1.84 ) ( 2.795 2.01 ) ;
+      RECT ( 2.965 1.84 ) ( 3.045 2.01 ) ;
+      RECT ( 2.715 1.76 ) ( 3.045 1.84 ) ;
+      RECT ( 4.155 2.01 ) ( 4.485 2.09 ) ;
+      RECT ( 4.155 1.84 ) ( 4.235 2.01 ) ;
+      RECT ( 4.405 1.84 ) ( 4.485 2.01 ) ;
+      RECT ( 4.155 1.76 ) ( 4.485 1.84 ) ;
+      RECT ( 5.595 2.01 ) ( 5.925 2.09 ) ;
+      RECT ( 5.595 1.84 ) ( 5.675 2.01 ) ;
+      RECT ( 5.845 1.84 ) ( 5.925 2.01 ) ;
+      RECT ( 5.595 1.76 ) ( 5.925 1.84 ) ;
+      RECT ( 1.275 1.075 ) ( 1.605 1.155 ) ;
+      RECT ( 1.275 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.905 ) ( 1.605 1.075 ) ;
+      RECT ( 1.275 0.825 ) ( 1.605 0.905 ) ;
+      RECT ( 2.715 1.075 ) ( 3.045 1.155 ) ;
+      RECT ( 2.715 0.905 ) ( 2.795 1.075 ) ;
+      RECT ( 2.965 0.905 ) ( 3.045 1.075 ) ;
+      RECT ( 4.155 1.075 ) ( 4.485 1.155 ) ;
+      RECT ( 4.155 0.92 ) ( 4.235 1.075 ) ;
+      RECT ( 2.715 0.825 ) ( 3.045 0.905 ) ;
+      RECT ( 4.175 0.905 ) ( 4.235 0.92 ) ;
+      RECT ( 4.405 0.905 ) ( 4.485 1.075 ) ;
+      RECT ( 4.175 0.825 ) ( 4.485 0.905 ) ;
+      RECT ( 5.595 1.075 ) ( 5.925 1.155 ) ;
+      RECT ( 5.595 0.905 ) ( 5.675 1.075 ) ;
+      RECT ( 5.845 0.905 ) ( 5.925 1.075 ) ;
+      RECT ( 5.595 0.825 ) ( 5.925 0.905 ) ;
+      RECT ( 0.795 0.67 ) ( 1.105 0.75 ) ;
+      RECT ( 0.795 0.5 ) ( 0.875 0.67 ) ;
+      RECT ( 1.045 0.655 ) ( 1.105 0.67 ) ;
+      RECT ( 3.675 0.67 ) ( 4.005 0.75 ) ;
+      RECT ( 1.045 0.5 ) ( 1.125 0.655 ) ;
+      RECT ( 0.795 0.42 ) ( 1.125 0.5 ) ;
+      RECT ( 1.755 0.51 ) ( 2.085 0.59 ) ;
+      RECT ( 1.755 0.34 ) ( 1.835 0.51 ) ;
+      RECT ( 2.005 0.34 ) ( 2.085 0.51 ) ;
+      RECT ( 3.675 0.5 ) ( 3.755 0.67 ) ;
+      RECT ( 3.925 0.5 ) ( 4.005 0.67 ) ;
+      RECT ( 6.095 0.67 ) ( 6.405 0.75 ) ;
+      RECT ( 6.095 0.655 ) ( 6.155 0.67 ) ;
+      RECT ( 3.675 0.42 ) ( 4.005 0.5 ) ;
+      RECT ( 4.635 0.51 ) ( 4.965 0.59 ) ;
+      RECT ( 1.755 0.24 ) ( 2.085 0.34 ) ;
+      RECT ( 4.635 0.34 ) ( 4.715 0.51 ) ;
+      RECT ( 4.885 0.34 ) ( 4.965 0.51 ) ;
+      RECT ( 6.075 0.5 ) ( 6.155 0.655 ) ;
+      RECT ( 6.325 0.5 ) ( 6.405 0.67 ) ;
+      RECT ( 6.075 0.42 ) ( 6.405 0.5 ) ;
+      RECT ( 4.635 0.24 ) ( 4.965 0.34 ) ;
+      RECT ( 0 0.085 ) ( 7.2 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.475 0.085 ) ;
+      RECT ( 4.645 -0.085 ) ( 4.955 0.085 ) ;
+      RECT ( 5.125 -0.085 ) ( 5.435 0.085 ) ;
+      RECT ( 5.605 -0.085 ) ( 5.915 0.085 ) ;
+      RECT ( 6.085 -0.085 ) ( 6.395 0.085 ) ;
+      RECT ( 6.565 -0.085 ) ( 6.875 0.085 ) ;
+      RECT ( 7.045 -0.085 ) ( 7.2 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 7.2 -0.085 ) ;
     LAYER metal1 ;
-      RECT ( 0 3.42 ) ( 7.2 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
-      RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
-      RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
-      RECT ( 5.61 3.25 ) ( 5.92 3.42 ) ;
-      RECT ( 6.09 3.25 ) ( 6.4 3.42 ) ;
-      RECT ( 6.57 3.25 ) ( 6.88 3.42 ) ;
-      RECT ( 7.05 3.25 ) ( 7.2 3.42 ) ;
-      RECT ( 0 3.09 ) ( 7.2 3.25 ) ;
-      RECT ( 1.78 2.99 ) ( 2.07 3.09 ) ;
-      RECT ( 1.78 2.82 ) ( 1.84 2.99 ) ;
-      RECT ( 2.01 2.82 ) ( 2.07 2.99 ) ;
-      RECT ( 1.78 2.76 ) ( 2.07 2.82 ) ;
-      RECT ( 4.66 2.99 ) ( 4.95 3.09 ) ;
-      RECT ( 4.66 2.82 ) ( 4.72 2.99 ) ;
-      RECT ( 4.89 2.82 ) ( 4.95 2.99 ) ;
-      RECT ( 4.66 2.76 ) ( 4.95 2.82 ) ;
-      RECT ( 0.82 2.43 ) ( 1.11 2.49 ) ;
-      RECT ( 0.82 2.26 ) ( 0.88 2.43 ) ;
-      RECT ( 1.05 2.26 ) ( 1.11 2.43 ) ;
-      RECT ( 0.82 2.2 ) ( 1.11 2.26 ) ;
-      RECT ( 3.7 2.43 ) ( 3.99 2.49 ) ;
-      RECT ( 3.7 2.26 ) ( 3.76 2.43 ) ;
-      RECT ( 3.93 2.41 ) ( 3.99 2.43 ) ;
-      RECT ( 6.1 2.43 ) ( 6.39 2.49 ) ;
-      RECT ( 6.1 2.41 ) ( 6.16 2.43 ) ;
-      RECT ( 3.93 2.27 ) ( 6.16 2.41 ) ;
-      RECT ( 3.93 2.26 ) ( 3.99 2.27 ) ;
-      RECT ( 3.7 2.2 ) ( 3.99 2.26 ) ;
-      RECT ( 6.1 2.26 ) ( 6.16 2.27 ) ;
-      RECT ( 6.33 2.26 ) ( 6.39 2.43 ) ;
-      RECT ( 6.1 2.2 ) ( 6.39 2.26 ) ;
-      RECT ( 0.89 0.73 ) ( 1.03 2.2 ) ;
-      RECT ( 1.3 2.01 ) ( 1.59 2.07 ) ;
-      RECT ( 1.3 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 2 ) ( 1.59 2.01 ) ;
-      RECT ( 2.74 2.01 ) ( 3.03 2.07 ) ;
-      RECT ( 2.74 2 ) ( 2.8 2.01 ) ;
-      RECT ( 1.53 1.86 ) ( 2.8 2 ) ;
-      RECT ( 1.53 1.84 ) ( 1.59 1.86 ) ;
-      RECT ( 1.3 1.78 ) ( 1.59 1.84 ) ;
-      RECT ( 2.74 1.84 ) ( 2.8 1.86 ) ;
-      RECT ( 2.97 2 ) ( 3.03 2.01 ) ;
-      RECT ( 4.18 2.01 ) ( 4.47 2.07 ) ;
-      RECT ( 4.18 2 ) ( 4.24 2.01 ) ;
-      RECT ( 2.97 1.86 ) ( 4.24 2 ) ;
-      RECT ( 2.97 1.84 ) ( 3.03 1.86 ) ;
-      RECT ( 2.74 1.78 ) ( 3.03 1.84 ) ;
-      RECT ( 4.18 1.84 ) ( 4.24 1.86 ) ;
-      RECT ( 4.41 2 ) ( 4.47 2.01 ) ;
-      RECT ( 5.62 2.01 ) ( 5.91 2.07 ) ;
-      RECT ( 5.62 2 ) ( 5.68 2.01 ) ;
-      RECT ( 4.41 1.86 ) ( 5.68 2 ) ;
-      RECT ( 4.41 1.84 ) ( 4.47 1.86 ) ;
-      RECT ( 4.18 1.78 ) ( 4.47 1.84 ) ;
-      RECT ( 5.62 1.84 ) ( 5.68 1.86 ) ;
-      RECT ( 5.85 1.84 ) ( 5.91 2.01 ) ;
-      RECT ( 5.62 1.78 ) ( 5.91 1.84 ) ;
-      RECT ( 1.37 1.14 ) ( 1.51 1.78 ) ;
-      RECT ( 2.81 1.14 ) ( 2.95 1.78 ) ;
-      RECT ( 4.25 1.14 ) ( 4.39 1.78 ) ;
-      RECT ( 5.69 1.14 ) ( 5.83 1.78 ) ;
-      RECT ( 1.3 1.08 ) ( 1.59 1.14 ) ;
-      RECT ( 1.3 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 1.59 1.08 ) ;
-      RECT ( 1.3 0.85 ) ( 1.59 0.91 ) ;
-      RECT ( 2.74 1.08 ) ( 3.03 1.14 ) ;
-      RECT ( 2.74 0.91 ) ( 2.8 1.08 ) ;
-      RECT ( 2.97 0.91 ) ( 3.03 1.08 ) ;
-      RECT ( 2.74 0.85 ) ( 3.03 0.91 ) ;
-      RECT ( 4.18 1.08 ) ( 4.47 1.14 ) ;
-      RECT ( 4.18 0.91 ) ( 4.24 1.08 ) ;
-      RECT ( 4.41 0.91 ) ( 4.47 1.08 ) ;
-      RECT ( 4.18 0.85 ) ( 4.47 0.91 ) ;
-      RECT ( 5.62 1.08 ) ( 5.91 1.14 ) ;
-      RECT ( 5.62 0.91 ) ( 5.68 1.08 ) ;
-      RECT ( 5.85 0.91 ) ( 5.91 1.08 ) ;
-      RECT ( 5.62 0.85 ) ( 5.91 0.91 ) ;
-      RECT ( 6.17 0.73 ) ( 6.31 2.2 ) ;
-      RECT ( 0.82 0.67 ) ( 1.11 0.73 ) ;
-      RECT ( 0.82 0.5 ) ( 0.88 0.67 ) ;
-      RECT ( 1.05 0.66 ) ( 1.11 0.67 ) ;
-      RECT ( 3.7 0.67 ) ( 3.99 0.73 ) ;
-      RECT ( 3.7 0.66 ) ( 3.76 0.67 ) ;
-      RECT ( 1.05 0.52 ) ( 3.76 0.66 ) ;
-      RECT ( 1.05 0.5 ) ( 1.11 0.52 ) ;
-      RECT ( 0.82 0.44 ) ( 1.11 0.5 ) ;
-      RECT ( 3.7 0.5 ) ( 3.76 0.52 ) ;
-      RECT ( 3.93 0.66 ) ( 3.99 0.67 ) ;
-      RECT ( 6.1 0.67 ) ( 6.39 0.73 ) ;
-      RECT ( 6.1 0.66 ) ( 6.16 0.67 ) ;
-      RECT ( 3.93 0.52 ) ( 6.16 0.66 ) ;
-      RECT ( 3.93 0.5 ) ( 3.99 0.52 ) ;
-      RECT ( 3.7 0.44 ) ( 3.99 0.5 ) ;
-      RECT ( 6.1 0.5 ) ( 6.16 0.52 ) ;
-      RECT ( 6.33 0.5 ) ( 6.39 0.67 ) ;
-      RECT ( 6.1 0.44 ) ( 6.39 0.5 ) ;
-      RECT ( 0 0.09 ) ( 7.2 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
-      RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
-      RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
-      RECT ( 5.61 -0.09 ) ( 5.92 0.09 ) ;
-      RECT ( 6.09 -0.09 ) ( 6.4 0.09 ) ;
-      RECT ( 6.57 -0.09 ) ( 6.88 0.09 ) ;
-      RECT ( 7.05 -0.09 ) ( 7.2 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 7.2 -0.09 ) ;
+      RECT ( 0 3.415 ) ( 7.2 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.475 3.415 ) ;
+      RECT ( 4.645 3.245 ) ( 4.955 3.415 ) ;
+      RECT ( 5.125 3.245 ) ( 5.435 3.415 ) ;
+      RECT ( 5.605 3.245 ) ( 5.915 3.415 ) ;
+      RECT ( 6.085 3.245 ) ( 6.395 3.415 ) ;
+      RECT ( 6.565 3.245 ) ( 6.875 3.415 ) ;
+      RECT ( 7.045 3.245 ) ( 7.2 3.415 ) ;
+      RECT ( 0 3.09 ) ( 7.2 3.245 ) ;
+      RECT ( 1.775 2.99 ) ( 2.065 3.09 ) ;
+      RECT ( 1.775 2.82 ) ( 1.835 2.99 ) ;
+      RECT ( 2.005 2.82 ) ( 2.065 2.99 ) ;
+      RECT ( 1.775 2.76 ) ( 2.065 2.82 ) ;
+      RECT ( 4.655 2.99 ) ( 4.945 3.09 ) ;
+      RECT ( 4.655 2.82 ) ( 4.715 2.99 ) ;
+      RECT ( 4.885 2.82 ) ( 4.945 2.99 ) ;
+      RECT ( 4.655 2.76 ) ( 4.945 2.82 ) ;
+      RECT ( 0.815 2.425 ) ( 1.105 2.485 ) ;
+      RECT ( 0.815 2.255 ) ( 0.875 2.425 ) ;
+      RECT ( 1.045 2.41 ) ( 1.105 2.425 ) ;
+      RECT ( 3.695 2.425 ) ( 3.985 2.485 ) ;
+      RECT ( 3.695 2.41 ) ( 3.755 2.425 ) ;
+      RECT ( 1.045 2.27 ) ( 3.755 2.41 ) ;
+      RECT ( 1.045 2.255 ) ( 1.105 2.27 ) ;
+      RECT ( 0.815 2.195 ) ( 1.105 2.255 ) ;
+      RECT ( 3.695 2.255 ) ( 3.755 2.27 ) ;
+      RECT ( 3.925 2.41 ) ( 3.985 2.425 ) ;
+      RECT ( 6.095 2.425 ) ( 6.385 2.485 ) ;
+      RECT ( 6.095 2.41 ) ( 6.155 2.425 ) ;
+      RECT ( 3.925 2.27 ) ( 6.155 2.41 ) ;
+      RECT ( 3.925 2.255 ) ( 3.985 2.27 ) ;
+      RECT ( 3.695 2.195 ) ( 3.985 2.255 ) ;
+      RECT ( 6.095 2.255 ) ( 6.155 2.27 ) ;
+      RECT ( 6.325 2.255 ) ( 6.385 2.425 ) ;
+      RECT ( 6.095 2.195 ) ( 6.385 2.255 ) ;
+      RECT ( 0.89 0.73 ) ( 1.03 2.195 ) ;
+      RECT ( 1.295 2.01 ) ( 1.585 2.07 ) ;
+      RECT ( 1.295 1.84 ) ( 1.355 2.01 ) ;
+      RECT ( 1.525 1.84 ) ( 1.585 2.01 ) ;
+      RECT ( 1.295 1.78 ) ( 1.585 1.84 ) ;
+      RECT ( 2.735 2.01 ) ( 3.025 2.07 ) ;
+      RECT ( 2.735 1.84 ) ( 2.795 2.01 ) ;
+      RECT ( 2.965 1.84 ) ( 3.025 2.01 ) ;
+      RECT ( 2.735 1.78 ) ( 3.025 1.84 ) ;
+      RECT ( 4.175 2.01 ) ( 4.465 2.07 ) ;
+      RECT ( 4.175 1.84 ) ( 4.235 2.01 ) ;
+      RECT ( 4.405 1.84 ) ( 4.465 2.01 ) ;
+      RECT ( 4.175 1.78 ) ( 4.465 1.84 ) ;
+      RECT ( 5.615 2.01 ) ( 5.905 2.07 ) ;
+      RECT ( 5.615 1.84 ) ( 5.675 2.01 ) ;
+      RECT ( 5.845 1.84 ) ( 5.905 2.01 ) ;
+      RECT ( 5.615 1.78 ) ( 5.905 1.84 ) ;
+      RECT ( 1.37 1.135 ) ( 1.51 1.78 ) ;
+      RECT ( 2.81 1.135 ) ( 2.95 1.78 ) ;
+      RECT ( 4.25 1.135 ) ( 4.39 1.78 ) ;
+      RECT ( 5.69 1.135 ) ( 5.83 1.78 ) ;
+      RECT ( 1.295 1.075 ) ( 1.585 1.135 ) ;
+      RECT ( 1.295 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 1.06 ) ( 1.585 1.075 ) ;
+      RECT ( 2.735 1.075 ) ( 3.025 1.135 ) ;
+      RECT ( 2.735 1.06 ) ( 2.795 1.075 ) ;
+      RECT ( 1.525 0.92 ) ( 2.795 1.06 ) ;
+      RECT ( 1.525 0.905 ) ( 1.585 0.92 ) ;
+      RECT ( 1.295 0.845 ) ( 1.585 0.905 ) ;
+      RECT ( 2.735 0.905 ) ( 2.795 0.92 ) ;
+      RECT ( 2.965 1.06 ) ( 3.025 1.075 ) ;
+      RECT ( 4.175 1.075 ) ( 4.465 1.135 ) ;
+      RECT ( 4.175 1.06 ) ( 4.235 1.075 ) ;
+      RECT ( 2.965 0.92 ) ( 4.235 1.06 ) ;
+      RECT ( 2.965 0.905 ) ( 3.025 0.92 ) ;
+      RECT ( 2.735 0.845 ) ( 3.025 0.905 ) ;
+      RECT ( 4.175 0.905 ) ( 4.235 0.92 ) ;
+      RECT ( 4.405 1.06 ) ( 4.465 1.075 ) ;
+      RECT ( 5.615 1.075 ) ( 5.905 1.135 ) ;
+      RECT ( 5.615 1.06 ) ( 5.675 1.075 ) ;
+      RECT ( 4.405 0.92 ) ( 5.675 1.06 ) ;
+      RECT ( 4.405 0.905 ) ( 4.465 0.92 ) ;
+      RECT ( 4.175 0.845 ) ( 4.465 0.905 ) ;
+      RECT ( 5.615 0.905 ) ( 5.675 0.92 ) ;
+      RECT ( 5.845 0.905 ) ( 5.905 1.075 ) ;
+      RECT ( 5.615 0.845 ) ( 5.905 0.905 ) ;
+      RECT ( 6.17 0.73 ) ( 6.31 2.195 ) ;
+      RECT ( 0.815 0.67 ) ( 1.105 0.73 ) ;
+      RECT ( 0.815 0.5 ) ( 0.875 0.67 ) ;
+      RECT ( 1.045 0.5 ) ( 1.105 0.67 ) ;
+      RECT ( 0.815 0.44 ) ( 1.105 0.5 ) ;
+      RECT ( 3.695 0.67 ) ( 3.985 0.73 ) ;
+      RECT ( 3.695 0.5 ) ( 3.755 0.67 ) ;
+      RECT ( 3.925 0.655 ) ( 3.985 0.67 ) ;
+      RECT ( 6.095 0.67 ) ( 6.385 0.73 ) ;
+      RECT ( 6.095 0.655 ) ( 6.155 0.67 ) ;
+      RECT ( 3.925 0.515 ) ( 6.155 0.655 ) ;
+      RECT ( 3.925 0.5 ) ( 3.985 0.515 ) ;
+      RECT ( 3.695 0.44 ) ( 3.985 0.5 ) ;
+      RECT ( 6.095 0.5 ) ( 6.155 0.515 ) ;
+      RECT ( 6.325 0.5 ) ( 6.385 0.67 ) ;
+      RECT ( 6.095 0.44 ) ( 6.385 0.5 ) ;
+      RECT ( 0 0.085 ) ( 7.2 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.475 0.085 ) ;
+      RECT ( 4.645 -0.085 ) ( 4.955 0.085 ) ;
+      RECT ( 5.125 -0.085 ) ( 5.435 0.085 ) ;
+      RECT ( 5.605 -0.085 ) ( 5.915 0.085 ) ;
+      RECT ( 6.085 -0.085 ) ( 6.395 0.085 ) ;
+      RECT ( 6.565 -0.085 ) ( 6.875 0.085 ) ;
+      RECT ( 7.045 -0.085 ) ( 7.2 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 7.2 -0.085 ) ;
 
   end
 END INVX8
diff --git a/cells/lef/INVX8.lef.temp b/cells/lef/INVX8.lef.temp
index 1ac4e6a..c90617a 100644
--- a/cells/lef/INVX8.lef.temp
+++ b/cells/lef/INVX8.lef.temp
@@ -38,19 +38,19 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 0.81500000 0.44000000 1.10500000 0.51500000 ;
         RECT 3.69500000 0.44000000 3.98500000 0.51500000 ;
         RECT 6.09500000 0.44000000 6.38500000 0.51500000 ;
-        RECT 0.81500000 0.51500000 6.38500000 0.65500000 ;
-        RECT 0.81500000 0.65500000 1.10500000 0.73000000 ;
+        RECT 3.69500000 0.51500000 6.38500000 0.65500000 ;
+        RECT 0.81500000 0.44000000 1.10500000 0.73000000 ;
         RECT 3.69500000 0.65500000 3.98500000 0.73000000 ;
         RECT 6.09500000 0.65500000 6.38500000 0.73000000 ;
         RECT 0.89000000 0.73000000 1.03000000 2.19500000 ;
         RECT 6.17000000 0.73000000 6.31000000 2.19500000 ;
+        RECT 0.81500000 2.19500000 1.10500000 2.27000000 ;
         RECT 3.69500000 2.19500000 3.98500000 2.27000000 ;
         RECT 6.09500000 2.19500000 6.38500000 2.27000000 ;
-        RECT 3.69500000 2.27000000 6.38500000 2.41000000 ;
-        RECT 0.81500000 2.19500000 1.10500000 2.48500000 ;
+        RECT 0.81500000 2.27000000 6.38500000 2.41000000 ;
+        RECT 0.81500000 2.41000000 1.10500000 2.48500000 ;
         RECT 3.69500000 2.41000000 3.98500000 2.48500000 ;
         RECT 6.09500000 2.41000000 6.38500000 2.48500000 ;
     END
@@ -63,23 +63,23 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
-        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
-        RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
-        RECT 5.61500000 0.84500000 5.90500000 1.13500000 ;
+        RECT 1.29500000 0.84500000 1.58500000 0.92000000 ;
+        RECT 2.73500000 0.84500000 3.02500000 0.92000000 ;
+        RECT 4.17500000 0.84500000 4.46500000 0.92000000 ;
+        RECT 5.61500000 0.84500000 5.90500000 0.92000000 ;
+        RECT 1.29500000 0.92000000 5.90500000 1.06000000 ;
+        RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
+        RECT 2.73500000 1.06000000 3.02500000 1.13500000 ;
+        RECT 4.17500000 1.06000000 4.46500000 1.13500000 ;
+        RECT 5.61500000 1.06000000 5.90500000 1.13500000 ;
         RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
         RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
         RECT 4.25000000 1.13500000 4.39000000 1.78000000 ;
         RECT 5.69000000 1.13500000 5.83000000 1.78000000 ;
-        RECT 1.29500000 1.78000000 1.58500000 1.85500000 ;
-        RECT 2.73500000 1.78000000 3.02500000 1.85500000 ;
-        RECT 4.17500000 1.78000000 4.46500000 1.85500000 ;
-        RECT 5.61500000 1.78000000 5.90500000 1.85500000 ;
-        RECT 1.29500000 1.85500000 5.90500000 1.99500000 ;
-        RECT 1.29500000 1.99500000 1.58500000 2.07000000 ;
-        RECT 2.73500000 1.99500000 3.02500000 2.07000000 ;
-        RECT 4.17500000 1.99500000 4.46500000 2.07000000 ;
-        RECT 5.61500000 1.99500000 5.90500000 2.07000000 ;
+        RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
+        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+        RECT 4.17500000 1.78000000 4.46500000 2.07000000 ;
+        RECT 5.61500000 1.78000000 5.90500000 2.07000000 ;
     END
   END A
 
diff --git a/cells/lef/MUX2X1.lef b/cells/lef/MUX2X1.lef
index 11339ab..7da19f9 100644
--- a/cells/lef/MUX2X1.lef
+++ b/cells/lef/MUX2X1.lef
@@ -82,17 +82,6 @@
         RECT 5.140 0.440 5.430 0.520 ;
     END
   END Y
-  PIN B
-    DIRECTION INOUT ;
-    USE SIGNAL ;
-    SHAPE ABUTMENT ;
-    PORT
-      LAYER met1 ;
-        RECT 7.060 1.780 7.350 2.070 ;
-        RECT 7.130 1.140 7.270 1.780 ;
-        RECT 7.060 0.850 7.350 1.140 ;
-    END
-  END B
   PIN S
     DIRECTION INOUT ;
     USE SIGNAL ;
@@ -117,6 +106,17 @@
         RECT 2.740 1.250 3.030 1.540 ;
     END
   END A
+  PIN B
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 7.060 1.780 7.350 2.070 ;
+        RECT 7.130 1.140 7.270 1.780 ;
+        RECT 7.060 0.850 7.350 1.140 ;
+    END
+  END B
   OBS
       LAYER li1 ;
         RECT 0.560 2.430 0.890 2.510 ;
diff --git a/cells/lef/MUX2X1.lef.beforemagic b/cells/lef/MUX2X1.lef.beforemagic
index f6fe378..0348811 100644
--- a/cells/lef/MUX2X1.lef.beforemagic
+++ b/cells/lef/MUX2X1.lef.beforemagic
@@ -48,19 +48,6 @@
     END
   END Y
 
-  PIN B
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 7.05500000 0.84500000 7.34500000 1.13500000 ;
-        RECT 7.13000000 1.13500000 7.27000000 1.78000000 ;
-        RECT 7.05500000 1.78000000 7.34500000 2.07000000 ;
-    END
-  END B
-
   PIN S
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -89,265 +76,279 @@
     END
   END A
 
+  PIN B
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 7.05500000 0.84500000 7.34500000 1.13500000 ;
+        RECT 7.13000000 1.13500000 7.27000000 1.78000000 ;
+        RECT 7.05500000 1.78000000 7.34500000 2.07000000 ;
+    END
+  END B
+
 
   OBS
     LAYER locali ;
-      RECT ( 0 3.42 ) ( 8.64 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
-      RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
-      RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
-      RECT ( 5.61 3.25 ) ( 5.92 3.42 ) ;
-      RECT ( 6.09 3.25 ) ( 6.4 3.42 ) ;
-      RECT ( 6.57 3.25 ) ( 6.88 3.42 ) ;
-      RECT ( 7.05 3.25 ) ( 7.36 3.42 ) ;
-      RECT ( 7.53 3.25 ) ( 7.84 3.42 ) ;
-      RECT ( 8.01 3.25 ) ( 8.32 3.42 ) ;
-      RECT ( 8.49 3.25 ) ( 8.64 3.42 ) ;
-      RECT ( 0 3.09 ) ( 8.64 3.25 ) ;
-      RECT ( 1.76 2.99 ) ( 2.09 3.09 ) ;
-      RECT ( 1.76 2.82 ) ( 1.84 2.99 ) ;
-      RECT ( 2.01 2.82 ) ( 2.09 2.99 ) ;
-      RECT ( 1.76 2.74 ) ( 2.09 2.82 ) ;
-      RECT ( 7.52 2.99 ) ( 7.85 3.09 ) ;
-      RECT ( 7.52 2.82 ) ( 7.6 2.99 ) ;
-      RECT ( 7.77 2.82 ) ( 7.85 2.99 ) ;
-      RECT ( 7.52 2.74 ) ( 7.85 2.82 ) ;
-      RECT ( 0.56 2.43 ) ( 0.89 2.51 ) ;
-      RECT ( 5.12 2.43 ) ( 5.45 2.51 ) ;
-      RECT ( 0.56 2.26 ) ( 0.64 2.43 ) ;
-      RECT ( 0.81 2.26 ) ( 0.89 2.43 ) ;
-      RECT ( 0.56 2.18 ) ( 0.89 2.26 ) ;
-      RECT ( 1.36 2.09 ) ( 1.53 2.26 ) ;
-      RECT ( 5.12 2.26 ) ( 5.2 2.43 ) ;
-      RECT ( 5.37 2.26 ) ( 5.45 2.43 ) ;
-      RECT ( 5.12 2.18 ) ( 5.45 2.26 ) ;
-      RECT ( 1.28 2.01 ) ( 1.61 2.09 ) ;
-      RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
-      RECT ( 1.28 1.76 ) ( 1.61 1.84 ) ;
-      RECT ( 2.72 2.01 ) ( 3.05 2.09 ) ;
-      RECT ( 2.72 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.05 2.01 ) ;
-      RECT ( 2.72 1.76 ) ( 3.05 1.84 ) ;
-      RECT ( 4.16 2.01 ) ( 4.49 2.09 ) ;
-      RECT ( 5.62 2.01 ) ( 5.93 2.09 ) ;
-      RECT ( 4.16 1.84 ) ( 4.24 2.01 ) ;
-      RECT ( 4.41 1.84 ) ( 4.49 2.01 ) ;
-      RECT ( 4.16 1.76 ) ( 4.49 1.84 ) ;
-      RECT ( 5.6 1.84 ) ( 5.68 2.01 ) ;
-      RECT ( 5.85 1.84 ) ( 5.93 2.01 ) ;
-      RECT ( 5.6 1.76 ) ( 5.93 1.84 ) ;
-      RECT ( 7.04 2.01 ) ( 7.37 2.09 ) ;
-      RECT ( 7.04 1.84 ) ( 7.12 2.01 ) ;
-      RECT ( 7.29 1.84 ) ( 7.37 2.01 ) ;
-      RECT ( 7.04 1.76 ) ( 7.37 1.84 ) ;
-      RECT ( 1.36 1.62 ) ( 1.53 1.76 ) ;
-      RECT ( 2.8 1.48 ) ( 2.97 1.76 ) ;
-      RECT ( 2.8 1.16 ) ( 2.97 1.31 ) ;
-      RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
-      RECT ( 1.28 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
-      RECT ( 1.28 0.83 ) ( 1.61 0.91 ) ;
-      RECT ( 2.72 1.08 ) ( 3.05 1.16 ) ;
-      RECT ( 4.16 1.08 ) ( 4.49 1.16 ) ;
-      RECT ( 2.72 0.91 ) ( 2.8 1.08 ) ;
-      RECT ( 2.97 0.91 ) ( 3.05 1.08 ) ;
-      RECT ( 3.45 0.91 ) ( 4.24 1.08 ) ;
-      RECT ( 4.41 0.91 ) ( 4.49 1.08 ) ;
-      RECT ( 5.6 1.08 ) ( 5.93 1.16 ) ;
-      RECT ( 5.6 0.92 ) ( 5.68 1.08 ) ;
-      RECT ( 2.72 0.83 ) ( 3.05 0.91 ) ;
-      RECT ( 4.16 0.83 ) ( 4.49 0.91 ) ;
-      RECT ( 5.62 0.91 ) ( 5.68 0.92 ) ;
-      RECT ( 5.85 0.91 ) ( 5.93 1.08 ) ;
-      RECT ( 5.62 0.83 ) ( 5.93 0.91 ) ;
-      RECT ( 7.04 1.08 ) ( 7.37 1.16 ) ;
-      RECT ( 7.04 0.91 ) ( 7.12 1.08 ) ;
-      RECT ( 7.29 0.91 ) ( 7.37 1.08 ) ;
-      RECT ( 7.04 0.83 ) ( 7.37 0.91 ) ;
-      RECT ( 0.56 0.67 ) ( 0.89 0.75 ) ;
-      RECT ( 0.56 0.5 ) ( 0.64 0.67 ) ;
-      RECT ( 0.81 0.5 ) ( 0.89 0.67 ) ;
-      RECT ( 5.12 0.67 ) ( 5.45 0.75 ) ;
-      RECT ( 0.56 0.42 ) ( 0.89 0.5 ) ;
-      RECT ( 1.76 0.51 ) ( 2.09 0.59 ) ;
-      RECT ( 1.76 0.34 ) ( 1.84 0.51 ) ;
-      RECT ( 2.01 0.34 ) ( 2.09 0.51 ) ;
-      RECT ( 5.12 0.5 ) ( 5.2 0.67 ) ;
-      RECT ( 5.37 0.5 ) ( 5.45 0.67 ) ;
-      RECT ( 5.12 0.42 ) ( 5.45 0.5 ) ;
-      RECT ( 7.52 0.51 ) ( 7.85 0.59 ) ;
-      RECT ( 1.76 0.24 ) ( 2.09 0.34 ) ;
-      RECT ( 7.52 0.34 ) ( 7.6 0.51 ) ;
-      RECT ( 7.77 0.34 ) ( 7.85 0.51 ) ;
-      RECT ( 7.52 0.24 ) ( 7.85 0.34 ) ;
-      RECT ( 0 0.09 ) ( 8.64 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
-      RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
-      RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
-      RECT ( 5.61 -0.09 ) ( 5.92 0.09 ) ;
-      RECT ( 6.09 -0.09 ) ( 6.4 0.09 ) ;
-      RECT ( 6.57 -0.09 ) ( 6.88 0.09 ) ;
-      RECT ( 7.05 -0.09 ) ( 7.36 0.09 ) ;
-      RECT ( 7.53 -0.09 ) ( 7.84 0.09 ) ;
-      RECT ( 8.01 -0.09 ) ( 8.32 0.09 ) ;
-      RECT ( 8.49 -0.09 ) ( 8.64 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 8.64 -0.09 ) ;
+      RECT ( 0 3.415 ) ( 8.64 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.475 3.415 ) ;
+      RECT ( 4.645 3.245 ) ( 4.955 3.415 ) ;
+      RECT ( 5.125 3.245 ) ( 5.435 3.415 ) ;
+      RECT ( 5.605 3.245 ) ( 5.915 3.415 ) ;
+      RECT ( 6.085 3.245 ) ( 6.395 3.415 ) ;
+      RECT ( 6.565 3.245 ) ( 6.875 3.415 ) ;
+      RECT ( 7.045 3.245 ) ( 7.355 3.415 ) ;
+      RECT ( 7.525 3.245 ) ( 7.835 3.415 ) ;
+      RECT ( 8.005 3.245 ) ( 8.315 3.415 ) ;
+      RECT ( 8.485 3.245 ) ( 8.64 3.415 ) ;
+      RECT ( 0 3.09 ) ( 8.64 3.245 ) ;
+      RECT ( 1.755 2.99 ) ( 2.085 3.09 ) ;
+      RECT ( 1.755 2.82 ) ( 1.835 2.99 ) ;
+      RECT ( 2.005 2.82 ) ( 2.085 2.99 ) ;
+      RECT ( 1.755 2.74 ) ( 2.085 2.82 ) ;
+      RECT ( 7.515 2.99 ) ( 7.845 3.09 ) ;
+      RECT ( 7.515 2.82 ) ( 7.595 2.99 ) ;
+      RECT ( 7.765 2.82 ) ( 7.845 2.99 ) ;
+      RECT ( 7.515 2.74 ) ( 7.845 2.82 ) ;
+      RECT ( 0.555 2.425 ) ( 0.885 2.505 ) ;
+      RECT ( 5.115 2.425 ) ( 5.445 2.505 ) ;
+      RECT ( 0.555 2.255 ) ( 0.635 2.425 ) ;
+      RECT ( 0.805 2.255 ) ( 0.885 2.425 ) ;
+      RECT ( 0.555 2.175 ) ( 0.885 2.255 ) ;
+      RECT ( 1.355 2.09 ) ( 1.525 2.255 ) ;
+      RECT ( 5.115 2.255 ) ( 5.195 2.425 ) ;
+      RECT ( 5.365 2.255 ) ( 5.445 2.425 ) ;
+      RECT ( 5.115 2.175 ) ( 5.445 2.255 ) ;
+      RECT ( 1.275 2.01 ) ( 1.605 2.09 ) ;
+      RECT ( 1.275 1.84 ) ( 1.355 2.01 ) ;
+      RECT ( 1.525 1.84 ) ( 1.605 2.01 ) ;
+      RECT ( 1.275 1.76 ) ( 1.605 1.84 ) ;
+      RECT ( 2.715 2.01 ) ( 3.045 2.09 ) ;
+      RECT ( 2.715 1.84 ) ( 2.795 2.01 ) ;
+      RECT ( 2.965 1.84 ) ( 3.045 2.01 ) ;
+      RECT ( 2.715 1.76 ) ( 3.045 1.84 ) ;
+      RECT ( 4.155 2.01 ) ( 4.485 2.09 ) ;
+      RECT ( 4.155 1.84 ) ( 4.235 2.01 ) ;
+      RECT ( 4.405 1.84 ) ( 4.485 2.01 ) ;
+      RECT ( 5.615 2.01 ) ( 5.925 2.09 ) ;
+      RECT ( 5.615 2.005 ) ( 5.675 2.01 ) ;
+      RECT ( 4.155 1.76 ) ( 4.485 1.84 ) ;
+      RECT ( 5.595 1.84 ) ( 5.675 2.005 ) ;
+      RECT ( 5.845 1.84 ) ( 5.925 2.01 ) ;
+      RECT ( 5.595 1.76 ) ( 5.925 1.84 ) ;
+      RECT ( 7.035 2.01 ) ( 7.365 2.09 ) ;
+      RECT ( 7.035 1.84 ) ( 7.115 2.01 ) ;
+      RECT ( 7.285 1.84 ) ( 7.365 2.01 ) ;
+      RECT ( 7.035 1.76 ) ( 7.365 1.84 ) ;
+      RECT ( 1.355 1.615 ) ( 1.525 1.76 ) ;
+      RECT ( 2.795 1.48 ) ( 2.965 1.76 ) ;
+      RECT ( 2.795 1.155 ) ( 2.965 1.31 ) ;
+      RECT ( 1.275 1.075 ) ( 1.605 1.155 ) ;
+      RECT ( 1.275 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.905 ) ( 1.605 1.075 ) ;
+      RECT ( 1.275 0.825 ) ( 1.605 0.905 ) ;
+      RECT ( 2.715 1.075 ) ( 3.045 1.155 ) ;
+      RECT ( 4.155 1.075 ) ( 4.485 1.155 ) ;
+      RECT ( 2.715 0.905 ) ( 2.795 1.075 ) ;
+      RECT ( 2.965 0.905 ) ( 3.045 1.075 ) ;
+      RECT ( 3.445 0.905 ) ( 4.235 1.075 ) ;
+      RECT ( 4.405 0.905 ) ( 4.485 1.075 ) ;
+      RECT ( 5.595 1.075 ) ( 5.925 1.155 ) ;
+      RECT ( 5.595 0.92 ) ( 5.675 1.075 ) ;
+      RECT ( 2.715 0.825 ) ( 3.045 0.905 ) ;
+      RECT ( 4.155 0.825 ) ( 4.485 0.905 ) ;
+      RECT ( 5.615 0.905 ) ( 5.675 0.92 ) ;
+      RECT ( 5.845 0.905 ) ( 5.925 1.075 ) ;
+      RECT ( 5.615 0.825 ) ( 5.925 0.905 ) ;
+      RECT ( 7.035 1.075 ) ( 7.365 1.155 ) ;
+      RECT ( 7.035 0.905 ) ( 7.115 1.075 ) ;
+      RECT ( 7.285 0.905 ) ( 7.365 1.075 ) ;
+      RECT ( 7.035 0.825 ) ( 7.365 0.905 ) ;
+      RECT ( 0.555 0.67 ) ( 0.885 0.75 ) ;
+      RECT ( 0.555 0.5 ) ( 0.635 0.67 ) ;
+      RECT ( 0.805 0.5 ) ( 0.885 0.67 ) ;
+      RECT ( 5.115 0.67 ) ( 5.445 0.75 ) ;
+      RECT ( 0.555 0.42 ) ( 0.885 0.5 ) ;
+      RECT ( 1.755 0.51 ) ( 2.085 0.59 ) ;
+      RECT ( 1.755 0.34 ) ( 1.835 0.51 ) ;
+      RECT ( 2.005 0.34 ) ( 2.085 0.51 ) ;
+      RECT ( 5.115 0.5 ) ( 5.195 0.67 ) ;
+      RECT ( 5.365 0.5 ) ( 5.445 0.67 ) ;
+      RECT ( 5.115 0.42 ) ( 5.445 0.5 ) ;
+      RECT ( 7.515 0.51 ) ( 7.845 0.59 ) ;
+      RECT ( 1.755 0.24 ) ( 2.085 0.34 ) ;
+      RECT ( 7.515 0.34 ) ( 7.595 0.51 ) ;
+      RECT ( 7.765 0.34 ) ( 7.845 0.51 ) ;
+      RECT ( 7.515 0.24 ) ( 7.845 0.34 ) ;
+      RECT ( 0 0.085 ) ( 8.64 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.475 0.085 ) ;
+      RECT ( 4.645 -0.085 ) ( 4.955 0.085 ) ;
+      RECT ( 5.125 -0.085 ) ( 5.435 0.085 ) ;
+      RECT ( 5.605 -0.085 ) ( 5.915 0.085 ) ;
+      RECT ( 6.085 -0.085 ) ( 6.395 0.085 ) ;
+      RECT ( 6.565 -0.085 ) ( 6.875 0.085 ) ;
+      RECT ( 7.045 -0.085 ) ( 7.355 0.085 ) ;
+      RECT ( 7.525 -0.085 ) ( 7.835 0.085 ) ;
+      RECT ( 8.005 -0.085 ) ( 8.315 0.085 ) ;
+      RECT ( 8.485 -0.085 ) ( 8.64 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 8.64 -0.085 ) ;
     LAYER metal1 ;
-      RECT ( 0 3.42 ) ( 8.64 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
-      RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
-      RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
-      RECT ( 5.61 3.25 ) ( 5.92 3.42 ) ;
-      RECT ( 6.09 3.25 ) ( 6.4 3.42 ) ;
-      RECT ( 6.57 3.25 ) ( 6.88 3.42 ) ;
-      RECT ( 7.05 3.25 ) ( 7.36 3.42 ) ;
-      RECT ( 7.53 3.25 ) ( 7.84 3.42 ) ;
-      RECT ( 8.01 3.25 ) ( 8.32 3.42 ) ;
-      RECT ( 8.49 3.25 ) ( 8.64 3.42 ) ;
-      RECT ( 0 3.09 ) ( 8.64 3.25 ) ;
-      RECT ( 1.78 2.99 ) ( 2.07 3.09 ) ;
-      RECT ( 1.78 2.82 ) ( 1.84 2.99 ) ;
-      RECT ( 2.01 2.82 ) ( 2.07 2.99 ) ;
-      RECT ( 1.78 2.76 ) ( 2.07 2.82 ) ;
-      RECT ( 7.54 2.99 ) ( 7.83 3.09 ) ;
-      RECT ( 7.54 2.82 ) ( 7.6 2.99 ) ;
-      RECT ( 7.77 2.82 ) ( 7.83 2.99 ) ;
-      RECT ( 7.54 2.76 ) ( 7.83 2.82 ) ;
-      RECT ( 0.58 2.43 ) ( 0.87 2.49 ) ;
-      RECT ( 0.58 2.26 ) ( 0.64 2.43 ) ;
-      RECT ( 0.81 2.26 ) ( 0.87 2.43 ) ;
-      RECT ( 0.58 2.2 ) ( 0.87 2.26 ) ;
-      RECT ( 1.3 2.43 ) ( 1.59 2.49 ) ;
-      RECT ( 1.3 2.26 ) ( 1.36 2.43 ) ;
-      RECT ( 1.53 2.41 ) ( 1.59 2.43 ) ;
-      RECT ( 5.14 2.43 ) ( 5.43 2.49 ) ;
-      RECT ( 1.53 2.27 ) ( 4.87 2.41 ) ;
-      RECT ( 1.53 2.26 ) ( 1.59 2.27 ) ;
-      RECT ( 1.3 2.2 ) ( 1.59 2.26 ) ;
-      RECT ( 0.65 2 ) ( 0.79 2.2 ) ;
-      RECT ( 4.18 2.01 ) ( 4.47 2.07 ) ;
-      RECT ( 4.18 2 ) ( 4.24 2.01 ) ;
-      RECT ( 0.65 1.86 ) ( 4.24 2 ) ;
-      RECT ( 0.65 0.73 ) ( 0.79 1.86 ) ;
-      RECT ( 4.18 1.84 ) ( 4.24 1.86 ) ;
-      RECT ( 4.41 1.84 ) ( 4.47 2.01 ) ;
-      RECT ( 4.73 2 ) ( 4.87 2.27 ) ;
-      RECT ( 5.14 2.26 ) ( 5.2 2.43 ) ;
-      RECT ( 5.37 2.41 ) ( 5.43 2.43 ) ;
-      RECT ( 5.37 2.27 ) ( 6.31 2.41 ) ;
-      RECT ( 5.37 2.26 ) ( 5.43 2.27 ) ;
-      RECT ( 5.14 2.2 ) ( 5.43 2.26 ) ;
-      RECT ( 5.62 2.01 ) ( 5.91 2.07 ) ;
-      RECT ( 5.62 2 ) ( 5.68 2.01 ) ;
-      RECT ( 4.73 1.86 ) ( 5.68 2 ) ;
-      RECT ( 4.18 1.78 ) ( 4.47 1.84 ) ;
-      RECT ( 5.62 1.84 ) ( 5.68 1.86 ) ;
-      RECT ( 5.85 1.84 ) ( 5.91 2.01 ) ;
-      RECT ( 5.62 1.78 ) ( 5.91 1.84 ) ;
-      RECT ( 1.3 1.62 ) ( 1.59 1.68 ) ;
-      RECT ( 1.3 1.45 ) ( 1.36 1.62 ) ;
-      RECT ( 1.53 1.45 ) ( 1.59 1.62 ) ;
-      RECT ( 1.3 1.39 ) ( 1.59 1.45 ) ;
-      RECT ( 2.74 1.48 ) ( 3.03 1.54 ) ;
-      RECT ( 1.37 1.14 ) ( 1.51 1.39 ) ;
-      RECT ( 2.74 1.31 ) ( 2.8 1.48 ) ;
-      RECT ( 2.97 1.31 ) ( 3.03 1.48 ) ;
-      RECT ( 2.74 1.25 ) ( 3.03 1.31 ) ;
-      RECT ( 1.3 1.08 ) ( 1.59 1.14 ) ;
-      RECT ( 1.3 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 1.06 ) ( 1.59 1.08 ) ;
-      RECT ( 3.22 1.08 ) ( 3.51 1.14 ) ;
-      RECT ( 3.22 1.06 ) ( 3.28 1.08 ) ;
-      RECT ( 1.53 0.92 ) ( 3.28 1.06 ) ;
-      RECT ( 1.53 0.91 ) ( 1.59 0.92 ) ;
-      RECT ( 1.3 0.85 ) ( 1.59 0.91 ) ;
-      RECT ( 3.22 0.91 ) ( 3.28 0.92 ) ;
-      RECT ( 3.45 0.91 ) ( 3.51 1.08 ) ;
+      RECT ( 0 3.415 ) ( 8.64 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.475 3.415 ) ;
+      RECT ( 4.645 3.245 ) ( 4.955 3.415 ) ;
+      RECT ( 5.125 3.245 ) ( 5.435 3.415 ) ;
+      RECT ( 5.605 3.245 ) ( 5.915 3.415 ) ;
+      RECT ( 6.085 3.245 ) ( 6.395 3.415 ) ;
+      RECT ( 6.565 3.245 ) ( 6.875 3.415 ) ;
+      RECT ( 7.045 3.245 ) ( 7.355 3.415 ) ;
+      RECT ( 7.525 3.245 ) ( 7.835 3.415 ) ;
+      RECT ( 8.005 3.245 ) ( 8.315 3.415 ) ;
+      RECT ( 8.485 3.245 ) ( 8.64 3.415 ) ;
+      RECT ( 0 3.09 ) ( 8.64 3.245 ) ;
+      RECT ( 1.775 2.99 ) ( 2.065 3.09 ) ;
+      RECT ( 1.775 2.82 ) ( 1.835 2.99 ) ;
+      RECT ( 2.005 2.82 ) ( 2.065 2.99 ) ;
+      RECT ( 1.775 2.76 ) ( 2.065 2.82 ) ;
+      RECT ( 7.535 2.99 ) ( 7.825 3.09 ) ;
+      RECT ( 7.535 2.82 ) ( 7.595 2.99 ) ;
+      RECT ( 7.765 2.82 ) ( 7.825 2.99 ) ;
+      RECT ( 7.535 2.76 ) ( 7.825 2.82 ) ;
+      RECT ( 0.575 2.425 ) ( 0.865 2.485 ) ;
+      RECT ( 0.575 2.255 ) ( 0.635 2.425 ) ;
+      RECT ( 0.805 2.255 ) ( 0.865 2.425 ) ;
+      RECT ( 0.575 2.195 ) ( 0.865 2.255 ) ;
+      RECT ( 1.295 2.425 ) ( 1.585 2.485 ) ;
+      RECT ( 1.295 2.255 ) ( 1.355 2.425 ) ;
+      RECT ( 1.525 2.41 ) ( 1.585 2.425 ) ;
+      RECT ( 5.135 2.425 ) ( 5.425 2.485 ) ;
+      RECT ( 1.525 2.27 ) ( 4.87 2.41 ) ;
+      RECT ( 1.525 2.255 ) ( 1.585 2.27 ) ;
+      RECT ( 1.295 2.195 ) ( 1.585 2.255 ) ;
+      RECT ( 0.65 1.995 ) ( 0.79 2.195 ) ;
+      RECT ( 4.175 2.01 ) ( 4.465 2.07 ) ;
+      RECT ( 4.175 1.995 ) ( 4.235 2.01 ) ;
+      RECT ( 0.65 1.855 ) ( 4.235 1.995 ) ;
+      RECT ( 0.65 0.73 ) ( 0.79 1.855 ) ;
+      RECT ( 4.175 1.84 ) ( 4.235 1.855 ) ;
+      RECT ( 4.405 1.84 ) ( 4.465 2.01 ) ;
+      RECT ( 4.73 1.995 ) ( 4.87 2.27 ) ;
+      RECT ( 5.135 2.255 ) ( 5.195 2.425 ) ;
+      RECT ( 5.365 2.41 ) ( 5.425 2.425 ) ;
+      RECT ( 5.365 2.27 ) ( 6.31 2.41 ) ;
+      RECT ( 5.365 2.255 ) ( 5.425 2.27 ) ;
+      RECT ( 5.135 2.195 ) ( 5.425 2.255 ) ;
+      RECT ( 5.615 2.01 ) ( 5.905 2.07 ) ;
+      RECT ( 5.615 1.995 ) ( 5.675 2.01 ) ;
+      RECT ( 4.73 1.855 ) ( 5.675 1.995 ) ;
+      RECT ( 4.175 1.78 ) ( 4.465 1.84 ) ;
+      RECT ( 5.615 1.84 ) ( 5.675 1.855 ) ;
+      RECT ( 5.845 1.84 ) ( 5.905 2.01 ) ;
+      RECT ( 5.615 1.78 ) ( 5.905 1.84 ) ;
+      RECT ( 1.295 1.615 ) ( 1.585 1.675 ) ;
+      RECT ( 1.295 1.445 ) ( 1.355 1.615 ) ;
+      RECT ( 1.525 1.445 ) ( 1.585 1.615 ) ;
+      RECT ( 1.295 1.385 ) ( 1.585 1.445 ) ;
+      RECT ( 2.735 1.48 ) ( 3.025 1.54 ) ;
+      RECT ( 1.37 1.135 ) ( 1.51 1.385 ) ;
+      RECT ( 2.735 1.31 ) ( 2.795 1.48 ) ;
+      RECT ( 2.965 1.31 ) ( 3.025 1.48 ) ;
+      RECT ( 2.735 1.25 ) ( 3.025 1.31 ) ;
+      RECT ( 1.295 1.075 ) ( 1.585 1.135 ) ;
+      RECT ( 1.295 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 1.06 ) ( 1.585 1.075 ) ;
+      RECT ( 3.215 1.075 ) ( 3.505 1.135 ) ;
+      RECT ( 3.215 1.06 ) ( 3.275 1.075 ) ;
+      RECT ( 1.525 0.92 ) ( 3.275 1.06 ) ;
+      RECT ( 1.525 0.905 ) ( 1.585 0.92 ) ;
+      RECT ( 1.295 0.845 ) ( 1.585 0.905 ) ;
+      RECT ( 3.215 0.905 ) ( 3.275 0.92 ) ;
+      RECT ( 3.445 0.905 ) ( 3.505 1.075 ) ;
       RECT ( 4.25 1.06 ) ( 4.39 1.78 ) ;
-      RECT ( 5.62 1.08 ) ( 5.91 1.14 ) ;
-      RECT ( 5.62 1.06 ) ( 5.68 1.08 ) ;
-      RECT ( 4.25 0.92 ) ( 5.68 1.06 ) ;
-      RECT ( 3.22 0.85 ) ( 3.51 0.91 ) ;
-      RECT ( 5.62 0.91 ) ( 5.68 0.92 ) ;
-      RECT ( 5.85 0.91 ) ( 5.91 1.08 ) ;
-      RECT ( 5.62 0.85 ) ( 5.91 0.91 ) ;
-      RECT ( 0.58 0.67 ) ( 0.87 0.73 ) ;
-      RECT ( 0.58 0.5 ) ( 0.64 0.67 ) ;
-      RECT ( 0.81 0.5 ) ( 0.87 0.67 ) ;
-      RECT ( 5.14 0.67 ) ( 5.43 0.73 ) ;
-      RECT ( 0.58 0.44 ) ( 0.87 0.5 ) ;
-      RECT ( 1.78 0.51 ) ( 2.07 0.57 ) ;
-      RECT ( 1.78 0.34 ) ( 1.84 0.51 ) ;
-      RECT ( 2.01 0.34 ) ( 2.07 0.51 ) ;
-      RECT ( 5.14 0.5 ) ( 5.2 0.67 ) ;
-      RECT ( 5.37 0.66 ) ( 5.43 0.67 ) ;
-      RECT ( 6.17 0.66 ) ( 6.31 2.27 ) ;
-      RECT ( 7.06 2.01 ) ( 7.35 2.07 ) ;
-      RECT ( 7.06 1.84 ) ( 7.12 2.01 ) ;
-      RECT ( 7.29 1.84 ) ( 7.35 2.01 ) ;
-      RECT ( 7.06 1.78 ) ( 7.35 1.84 ) ;
-      RECT ( 7.13 1.14 ) ( 7.27 1.78 ) ;
-      RECT ( 7.06 1.08 ) ( 7.35 1.14 ) ;
-      RECT ( 7.06 0.91 ) ( 7.12 1.08 ) ;
-      RECT ( 7.29 0.91 ) ( 7.35 1.08 ) ;
-      RECT ( 7.06 0.85 ) ( 7.35 0.91 ) ;
-      RECT ( 5.37 0.52 ) ( 6.31 0.66 ) ;
-      RECT ( 5.37 0.5 ) ( 5.43 0.52 ) ;
-      RECT ( 5.14 0.44 ) ( 5.43 0.5 ) ;
-      RECT ( 7.54 0.51 ) ( 7.83 0.57 ) ;
-      RECT ( 1.78 0.24 ) ( 2.07 0.34 ) ;
-      RECT ( 7.54 0.34 ) ( 7.6 0.51 ) ;
-      RECT ( 7.77 0.34 ) ( 7.83 0.51 ) ;
-      RECT ( 7.54 0.24 ) ( 7.83 0.34 ) ;
-      RECT ( 0 0.09 ) ( 8.64 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
-      RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
-      RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
-      RECT ( 5.61 -0.09 ) ( 5.92 0.09 ) ;
-      RECT ( 6.09 -0.09 ) ( 6.4 0.09 ) ;
-      RECT ( 6.57 -0.09 ) ( 6.88 0.09 ) ;
-      RECT ( 7.05 -0.09 ) ( 7.36 0.09 ) ;
-      RECT ( 7.53 -0.09 ) ( 7.84 0.09 ) ;
-      RECT ( 8.01 -0.09 ) ( 8.32 0.09 ) ;
-      RECT ( 8.49 -0.09 ) ( 8.64 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 8.64 -0.09 ) ;
+      RECT ( 5.615 1.075 ) ( 5.905 1.135 ) ;
+      RECT ( 5.615 1.06 ) ( 5.675 1.075 ) ;
+      RECT ( 4.25 0.92 ) ( 5.675 1.06 ) ;
+      RECT ( 3.215 0.845 ) ( 3.505 0.905 ) ;
+      RECT ( 5.615 0.905 ) ( 5.675 0.92 ) ;
+      RECT ( 5.845 0.905 ) ( 5.905 1.075 ) ;
+      RECT ( 5.615 0.845 ) ( 5.905 0.905 ) ;
+      RECT ( 0.575 0.67 ) ( 0.865 0.73 ) ;
+      RECT ( 0.575 0.5 ) ( 0.635 0.67 ) ;
+      RECT ( 0.805 0.5 ) ( 0.865 0.67 ) ;
+      RECT ( 5.135 0.67 ) ( 5.425 0.73 ) ;
+      RECT ( 0.575 0.44 ) ( 0.865 0.5 ) ;
+      RECT ( 1.775 0.51 ) ( 2.065 0.57 ) ;
+      RECT ( 1.775 0.34 ) ( 1.835 0.51 ) ;
+      RECT ( 2.005 0.34 ) ( 2.065 0.51 ) ;
+      RECT ( 5.135 0.5 ) ( 5.195 0.67 ) ;
+      RECT ( 5.365 0.655 ) ( 5.425 0.67 ) ;
+      RECT ( 6.17 0.655 ) ( 6.31 2.27 ) ;
+      RECT ( 7.055 2.01 ) ( 7.345 2.07 ) ;
+      RECT ( 7.055 1.84 ) ( 7.115 2.01 ) ;
+      RECT ( 7.285 1.84 ) ( 7.345 2.01 ) ;
+      RECT ( 7.055 1.78 ) ( 7.345 1.84 ) ;
+      RECT ( 7.13 1.135 ) ( 7.27 1.78 ) ;
+      RECT ( 7.055 1.075 ) ( 7.345 1.135 ) ;
+      RECT ( 7.055 0.905 ) ( 7.115 1.075 ) ;
+      RECT ( 7.285 0.905 ) ( 7.345 1.075 ) ;
+      RECT ( 7.055 0.845 ) ( 7.345 0.905 ) ;
+      RECT ( 5.365 0.515 ) ( 6.31 0.655 ) ;
+      RECT ( 5.365 0.5 ) ( 5.425 0.515 ) ;
+      RECT ( 5.135 0.44 ) ( 5.425 0.5 ) ;
+      RECT ( 7.535 0.51 ) ( 7.825 0.57 ) ;
+      RECT ( 1.775 0.24 ) ( 2.065 0.34 ) ;
+      RECT ( 7.535 0.34 ) ( 7.595 0.51 ) ;
+      RECT ( 7.765 0.34 ) ( 7.825 0.51 ) ;
+      RECT ( 7.535 0.24 ) ( 7.825 0.34 ) ;
+      RECT ( 0 0.085 ) ( 8.64 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.475 0.085 ) ;
+      RECT ( 4.645 -0.085 ) ( 4.955 0.085 ) ;
+      RECT ( 5.125 -0.085 ) ( 5.435 0.085 ) ;
+      RECT ( 5.605 -0.085 ) ( 5.915 0.085 ) ;
+      RECT ( 6.085 -0.085 ) ( 6.395 0.085 ) ;
+      RECT ( 6.565 -0.085 ) ( 6.875 0.085 ) ;
+      RECT ( 7.045 -0.085 ) ( 7.355 0.085 ) ;
+      RECT ( 7.525 -0.085 ) ( 7.835 0.085 ) ;
+      RECT ( 8.005 -0.085 ) ( 8.315 0.085 ) ;
+      RECT ( 8.485 -0.085 ) ( 8.64 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 8.64 -0.085 ) ;
 
   end
 END MUX2X1
diff --git a/cells/lef/MUX2X1.lef.temp b/cells/lef/MUX2X1.lef.temp
index 9d54f56..a8ffb18 100644
--- a/cells/lef/MUX2X1.lef.temp
+++ b/cells/lef/MUX2X1.lef.temp
@@ -48,19 +48,6 @@
     END
   END Y
 
-  PIN B
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 7.05500000 0.84500000 7.34500000 1.13500000 ;
-        RECT 7.13000000 1.13500000 7.27000000 1.78000000 ;
-        RECT 7.05500000 1.78000000 7.34500000 2.07000000 ;
-    END
-  END B
-
   PIN S
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -89,4 +76,17 @@
     END
   END A
 
+  PIN B
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 7.05500000 0.84500000 7.34500000 1.13500000 ;
+        RECT 7.13000000 1.13500000 7.27000000 1.78000000 ;
+        RECT 7.05500000 1.78000000 7.34500000 2.07000000 ;
+    END
+  END B
+
 END MUX2X1
diff --git a/cells/lef/NAND2X1.lef b/cells/lef/NAND2X1.lef
index f17ec01..faf6acc 100644
--- a/cells/lef/NAND2X1.lef
+++ b/cells/lef/NAND2X1.lef
@@ -66,17 +66,6 @@
         RECT 0.580 0.440 0.870 0.730 ;
     END
   END Y
-  PIN A
-    DIRECTION INOUT ;
-    USE SIGNAL ;
-    SHAPE ABUTMENT ;
-    PORT
-      LAYER met1 ;
-        RECT 2.740 1.780 3.030 2.070 ;
-        RECT 2.810 1.140 2.950 1.780 ;
-        RECT 2.740 0.850 3.030 1.140 ;
-    END
-  END A
   PIN B
     DIRECTION INOUT ;
     USE SIGNAL ;
@@ -88,6 +77,17 @@
         RECT 1.300 0.850 1.590 1.140 ;
     END
   END B
+  PIN A
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 2.740 1.780 3.030 2.070 ;
+        RECT 2.810 1.140 2.950 1.780 ;
+        RECT 2.740 0.850 3.030 1.140 ;
+    END
+  END A
   OBS
       LAYER li1 ;
         RECT 0.560 2.430 0.890 2.510 ;
diff --git a/cells/lef/NAND2X1.lef.beforemagic b/cells/lef/NAND2X1.lef.beforemagic
index 617af91..43f1c4d 100644
--- a/cells/lef/NAND2X1.lef.beforemagic
+++ b/cells/lef/NAND2X1.lef.beforemagic
@@ -48,19 +48,6 @@
     END
   END Y
 
-  PIN A
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
-        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
-        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-    END
-  END A
-
   PIN B
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -74,136 +61,150 @@
     END
   END B
 
+  PIN A
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
+        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
+        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+    END
+  END A
+
 
   OBS
     LAYER locali ;
-      RECT ( 0 3.42 ) ( 4.32 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.32 3.42 ) ;
-      RECT ( 0 3.09 ) ( 4.32 3.25 ) ;
-      RECT ( 1.76 2.99 ) ( 2.09 3.09 ) ;
-      RECT ( 1.76 2.82 ) ( 1.84 2.99 ) ;
-      RECT ( 2.01 2.82 ) ( 2.09 2.99 ) ;
-      RECT ( 1.76 2.74 ) ( 2.09 2.82 ) ;
-      RECT ( 0.56 2.43 ) ( 0.89 2.51 ) ;
-      RECT ( 0.56 2.26 ) ( 0.64 2.43 ) ;
-      RECT ( 0.81 2.26 ) ( 0.89 2.43 ) ;
-      RECT ( 0.56 2.18 ) ( 0.89 2.26 ) ;
-      RECT ( 3.2 2.43 ) ( 3.53 2.51 ) ;
-      RECT ( 3.2 2.26 ) ( 3.28 2.43 ) ;
-      RECT ( 3.45 2.26 ) ( 3.53 2.43 ) ;
-      RECT ( 3.2 2.18 ) ( 3.53 2.26 ) ;
-      RECT ( 1.28 2.01 ) ( 1.61 2.09 ) ;
-      RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
-      RECT ( 1.28 1.76 ) ( 1.61 1.84 ) ;
-      RECT ( 2.72 2.01 ) ( 3.03 2.09 ) ;
-      RECT ( 2.72 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.05 2.01 ) ;
-      RECT ( 2.72 1.76 ) ( 3.05 1.84 ) ;
-      RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
-      RECT ( 1.28 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
-      RECT ( 1.28 0.83 ) ( 1.61 0.91 ) ;
-      RECT ( 2.72 1.08 ) ( 3.05 1.16 ) ;
-      RECT ( 2.72 0.91 ) ( 2.8 1.08 ) ;
-      RECT ( 2.97 0.91 ) ( 3.05 1.08 ) ;
-      RECT ( 2.72 0.83 ) ( 3.05 0.91 ) ;
-      RECT ( 0.56 0.67 ) ( 0.89 0.75 ) ;
-      RECT ( 0.56 0.5 ) ( 0.64 0.67 ) ;
-      RECT ( 0.81 0.5 ) ( 0.89 0.67 ) ;
-      RECT ( 0.56 0.42 ) ( 0.89 0.5 ) ;
-      RECT ( 3.2 0.51 ) ( 3.53 0.59 ) ;
-      RECT ( 3.2 0.34 ) ( 3.28 0.51 ) ;
-      RECT ( 3.45 0.34 ) ( 3.53 0.51 ) ;
-      RECT ( 3.2 0.24 ) ( 3.53 0.34 ) ;
-      RECT ( 0 0.09 ) ( 4.32 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.32 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 4.32 -0.09 ) ;
+      RECT ( 0 3.415 ) ( 4.32 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.32 3.415 ) ;
+      RECT ( 0 3.09 ) ( 4.32 3.245 ) ;
+      RECT ( 1.755 2.99 ) ( 2.085 3.09 ) ;
+      RECT ( 1.755 2.82 ) ( 1.835 2.99 ) ;
+      RECT ( 2.005 2.82 ) ( 2.085 2.99 ) ;
+      RECT ( 1.755 2.74 ) ( 2.085 2.82 ) ;
+      RECT ( 0.555 2.425 ) ( 0.885 2.505 ) ;
+      RECT ( 0.555 2.255 ) ( 0.635 2.425 ) ;
+      RECT ( 0.805 2.255 ) ( 0.885 2.425 ) ;
+      RECT ( 0.555 2.175 ) ( 0.885 2.255 ) ;
+      RECT ( 3.195 2.425 ) ( 3.525 2.505 ) ;
+      RECT ( 3.195 2.255 ) ( 3.275 2.425 ) ;
+      RECT ( 3.445 2.255 ) ( 3.525 2.425 ) ;
+      RECT ( 3.195 2.175 ) ( 3.525 2.255 ) ;
+      RECT ( 1.275 2.01 ) ( 1.605 2.09 ) ;
+      RECT ( 1.275 1.84 ) ( 1.355 2.01 ) ;
+      RECT ( 1.525 1.84 ) ( 1.605 2.01 ) ;
+      RECT ( 1.275 1.76 ) ( 1.605 1.84 ) ;
+      RECT ( 2.715 2.01 ) ( 3.025 2.09 ) ;
+      RECT ( 2.715 1.84 ) ( 2.795 2.01 ) ;
+      RECT ( 2.965 2.005 ) ( 3.025 2.01 ) ;
+      RECT ( 2.965 1.84 ) ( 3.045 2.005 ) ;
+      RECT ( 2.715 1.76 ) ( 3.045 1.84 ) ;
+      RECT ( 1.275 1.075 ) ( 1.605 1.155 ) ;
+      RECT ( 1.275 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.905 ) ( 1.605 1.075 ) ;
+      RECT ( 1.275 0.825 ) ( 1.605 0.905 ) ;
+      RECT ( 2.715 1.075 ) ( 3.045 1.155 ) ;
+      RECT ( 2.715 0.905 ) ( 2.795 1.075 ) ;
+      RECT ( 2.965 0.905 ) ( 3.045 1.075 ) ;
+      RECT ( 2.715 0.825 ) ( 3.045 0.905 ) ;
+      RECT ( 0.555 0.67 ) ( 0.885 0.75 ) ;
+      RECT ( 0.555 0.5 ) ( 0.635 0.67 ) ;
+      RECT ( 0.805 0.5 ) ( 0.885 0.67 ) ;
+      RECT ( 0.555 0.42 ) ( 0.885 0.5 ) ;
+      RECT ( 3.195 0.51 ) ( 3.525 0.59 ) ;
+      RECT ( 3.195 0.34 ) ( 3.275 0.51 ) ;
+      RECT ( 3.445 0.34 ) ( 3.525 0.51 ) ;
+      RECT ( 3.195 0.24 ) ( 3.525 0.34 ) ;
+      RECT ( 0 0.085 ) ( 4.32 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.32 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 4.32 -0.085 ) ;
     LAYER metal1 ;
-      RECT ( 0 3.42 ) ( 4.32 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.32 3.42 ) ;
-      RECT ( 0 3.09 ) ( 4.32 3.25 ) ;
-      RECT ( 1.78 2.99 ) ( 2.07 3.09 ) ;
-      RECT ( 1.78 2.82 ) ( 1.84 2.99 ) ;
-      RECT ( 2.01 2.82 ) ( 2.07 2.99 ) ;
-      RECT ( 1.78 2.76 ) ( 2.07 2.82 ) ;
-      RECT ( 0.58 2.43 ) ( 0.87 2.49 ) ;
-      RECT ( 0.58 2.26 ) ( 0.64 2.43 ) ;
-      RECT ( 0.81 2.41 ) ( 0.87 2.43 ) ;
-      RECT ( 3.22 2.43 ) ( 3.51 2.49 ) ;
-      RECT ( 3.22 2.41 ) ( 3.28 2.43 ) ;
-      RECT ( 0.81 2.27 ) ( 3.28 2.41 ) ;
-      RECT ( 0.81 2.26 ) ( 0.87 2.27 ) ;
-      RECT ( 0.58 2.2 ) ( 0.87 2.26 ) ;
-      RECT ( 3.22 2.26 ) ( 3.28 2.27 ) ;
-      RECT ( 3.45 2.26 ) ( 3.51 2.43 ) ;
-      RECT ( 3.22 2.2 ) ( 3.51 2.26 ) ;
-      RECT ( 0.65 0.73 ) ( 0.79 2.2 ) ;
-      RECT ( 1.3 2.01 ) ( 1.59 2.07 ) ;
-      RECT ( 1.3 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.59 2.01 ) ;
-      RECT ( 1.3 1.78 ) ( 1.59 1.84 ) ;
-      RECT ( 2.74 2.01 ) ( 3.03 2.07 ) ;
-      RECT ( 2.74 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.03 2.01 ) ;
-      RECT ( 2.74 1.78 ) ( 3.03 1.84 ) ;
-      RECT ( 1.37 1.14 ) ( 1.51 1.78 ) ;
-      RECT ( 2.81 1.14 ) ( 2.95 1.78 ) ;
-      RECT ( 1.3 1.08 ) ( 1.59 1.14 ) ;
-      RECT ( 1.3 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 1.59 1.08 ) ;
-      RECT ( 1.3 0.85 ) ( 1.59 0.91 ) ;
-      RECT ( 2.74 1.08 ) ( 3.03 1.14 ) ;
-      RECT ( 2.74 0.91 ) ( 2.8 1.08 ) ;
-      RECT ( 2.97 0.91 ) ( 3.03 1.08 ) ;
-      RECT ( 2.74 0.85 ) ( 3.03 0.91 ) ;
-      RECT ( 0.58 0.67 ) ( 0.87 0.73 ) ;
-      RECT ( 0.58 0.5 ) ( 0.64 0.67 ) ;
-      RECT ( 0.81 0.5 ) ( 0.87 0.67 ) ;
-      RECT ( 0.58 0.44 ) ( 0.87 0.5 ) ;
-      RECT ( 3.22 0.51 ) ( 3.51 0.57 ) ;
-      RECT ( 3.22 0.34 ) ( 3.28 0.51 ) ;
-      RECT ( 3.45 0.34 ) ( 3.51 0.51 ) ;
-      RECT ( 3.22 0.24 ) ( 3.51 0.34 ) ;
-      RECT ( 0 0.09 ) ( 4.32 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.32 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 4.32 -0.09 ) ;
+      RECT ( 0 3.415 ) ( 4.32 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.32 3.415 ) ;
+      RECT ( 0 3.09 ) ( 4.32 3.245 ) ;
+      RECT ( 1.775 2.99 ) ( 2.065 3.09 ) ;
+      RECT ( 1.775 2.82 ) ( 1.835 2.99 ) ;
+      RECT ( 2.005 2.82 ) ( 2.065 2.99 ) ;
+      RECT ( 1.775 2.76 ) ( 2.065 2.82 ) ;
+      RECT ( 0.575 2.425 ) ( 0.865 2.485 ) ;
+      RECT ( 0.575 2.255 ) ( 0.635 2.425 ) ;
+      RECT ( 0.805 2.41 ) ( 0.865 2.425 ) ;
+      RECT ( 3.215 2.425 ) ( 3.505 2.485 ) ;
+      RECT ( 3.215 2.41 ) ( 3.275 2.425 ) ;
+      RECT ( 0.805 2.27 ) ( 3.275 2.41 ) ;
+      RECT ( 0.805 2.255 ) ( 0.865 2.27 ) ;
+      RECT ( 0.575 2.195 ) ( 0.865 2.255 ) ;
+      RECT ( 3.215 2.255 ) ( 3.275 2.27 ) ;
+      RECT ( 3.445 2.255 ) ( 3.505 2.425 ) ;
+      RECT ( 3.215 2.195 ) ( 3.505 2.255 ) ;
+      RECT ( 0.65 0.73 ) ( 0.79 2.195 ) ;
+      RECT ( 1.295 2.01 ) ( 1.585 2.07 ) ;
+      RECT ( 1.295 1.84 ) ( 1.355 2.01 ) ;
+      RECT ( 1.525 1.84 ) ( 1.585 2.01 ) ;
+      RECT ( 1.295 1.78 ) ( 1.585 1.84 ) ;
+      RECT ( 2.735 2.01 ) ( 3.025 2.07 ) ;
+      RECT ( 2.735 1.84 ) ( 2.795 2.01 ) ;
+      RECT ( 2.965 1.84 ) ( 3.025 2.01 ) ;
+      RECT ( 2.735 1.78 ) ( 3.025 1.84 ) ;
+      RECT ( 1.37 1.135 ) ( 1.51 1.78 ) ;
+      RECT ( 2.81 1.135 ) ( 2.95 1.78 ) ;
+      RECT ( 1.295 1.075 ) ( 1.585 1.135 ) ;
+      RECT ( 1.295 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.905 ) ( 1.585 1.075 ) ;
+      RECT ( 1.295 0.845 ) ( 1.585 0.905 ) ;
+      RECT ( 2.735 1.075 ) ( 3.025 1.135 ) ;
+      RECT ( 2.735 0.905 ) ( 2.795 1.075 ) ;
+      RECT ( 2.965 0.905 ) ( 3.025 1.075 ) ;
+      RECT ( 2.735 0.845 ) ( 3.025 0.905 ) ;
+      RECT ( 0.575 0.67 ) ( 0.865 0.73 ) ;
+      RECT ( 0.575 0.5 ) ( 0.635 0.67 ) ;
+      RECT ( 0.805 0.5 ) ( 0.865 0.67 ) ;
+      RECT ( 0.575 0.44 ) ( 0.865 0.5 ) ;
+      RECT ( 3.215 0.51 ) ( 3.505 0.57 ) ;
+      RECT ( 3.215 0.34 ) ( 3.275 0.51 ) ;
+      RECT ( 3.445 0.34 ) ( 3.505 0.51 ) ;
+      RECT ( 3.215 0.24 ) ( 3.505 0.34 ) ;
+      RECT ( 0 0.085 ) ( 4.32 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.32 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 4.32 -0.085 ) ;
 
   end
 END NAND2X1
diff --git a/cells/lef/NAND2X1.lef.temp b/cells/lef/NAND2X1.lef.temp
index a6bc4c3..6a37a4a 100644
--- a/cells/lef/NAND2X1.lef.temp
+++ b/cells/lef/NAND2X1.lef.temp
@@ -48,19 +48,6 @@
     END
   END Y
 
-  PIN A
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
-        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
-        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-    END
-  END A
-
   PIN B
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -74,4 +61,17 @@
     END
   END B
 
+  PIN A
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
+        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
+        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+    END
+  END A
+
 END NAND2X1
diff --git a/cells/lef/NAND3X1.lef.beforemagic b/cells/lef/NAND3X1.lef.beforemagic
index 7752121..8e0011b 100644
--- a/cells/lef/NAND3X1.lef.beforemagic
+++ b/cells/lef/NAND3X1.lef.beforemagic
@@ -90,170 +90,171 @@
 
   OBS
     LAYER locali ;
-      RECT ( 0 3.42 ) ( 5.76 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
-      RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
-      RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
-      RECT ( 5.61 3.25 ) ( 5.76 3.42 ) ;
-      RECT ( 0 3.09 ) ( 5.76 3.25 ) ;
-      RECT ( 1.76 2.99 ) ( 2.09 3.09 ) ;
-      RECT ( 1.76 2.82 ) ( 1.84 2.99 ) ;
-      RECT ( 2.01 2.82 ) ( 2.09 2.99 ) ;
-      RECT ( 1.76 2.74 ) ( 2.09 2.82 ) ;
-      RECT ( 4.64 2.99 ) ( 4.97 3.09 ) ;
-      RECT ( 4.64 2.82 ) ( 4.72 2.99 ) ;
-      RECT ( 4.89 2.82 ) ( 4.97 2.99 ) ;
-      RECT ( 4.64 2.74 ) ( 4.97 2.82 ) ;
-      RECT ( 0.56 2.43 ) ( 0.89 2.51 ) ;
-      RECT ( 0.56 2.26 ) ( 0.64 2.43 ) ;
-      RECT ( 0.81 2.26 ) ( 0.89 2.43 ) ;
-      RECT ( 0.56 2.18 ) ( 0.89 2.26 ) ;
-      RECT ( 3.2 2.43 ) ( 3.53 2.51 ) ;
-      RECT ( 3.2 2.26 ) ( 3.28 2.43 ) ;
-      RECT ( 3.45 2.26 ) ( 3.53 2.43 ) ;
-      RECT ( 3.2 2.18 ) ( 3.53 2.26 ) ;
-      RECT ( 1.28 2.01 ) ( 1.61 2.09 ) ;
-      RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
-      RECT ( 1.28 1.76 ) ( 1.61 1.84 ) ;
-      RECT ( 2.72 2.01 ) ( 3.03 2.09 ) ;
-      RECT ( 4.16 2.01 ) ( 4.49 2.09 ) ;
-      RECT ( 2.72 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.05 2.01 ) ;
-      RECT ( 2.72 1.76 ) ( 3.05 1.84 ) ;
-      RECT ( 4.16 1.84 ) ( 4.24 2.01 ) ;
-      RECT ( 4.41 1.84 ) ( 4.49 2.01 ) ;
-      RECT ( 4.16 1.76 ) ( 4.49 1.84 ) ;
-      RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
-      RECT ( 1.28 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
-      RECT ( 1.28 0.83 ) ( 1.61 0.91 ) ;
-      RECT ( 2.72 1.08 ) ( 3.05 1.16 ) ;
-      RECT ( 2.72 0.91 ) ( 2.8 1.08 ) ;
-      RECT ( 2.97 0.91 ) ( 3.05 1.08 ) ;
-      RECT ( 2.72 0.83 ) ( 3.05 0.91 ) ;
-      RECT ( 4.16 1.08 ) ( 4.49 1.16 ) ;
-      RECT ( 4.16 0.91 ) ( 4.24 1.08 ) ;
-      RECT ( 4.41 0.91 ) ( 4.49 1.08 ) ;
-      RECT ( 4.16 0.83 ) ( 4.49 0.91 ) ;
-      RECT ( 0.56 0.67 ) ( 0.89 0.75 ) ;
-      RECT ( 0.56 0.5 ) ( 0.64 0.67 ) ;
-      RECT ( 0.81 0.5 ) ( 0.89 0.67 ) ;
-      RECT ( 0.56 0.42 ) ( 0.89 0.5 ) ;
-      RECT ( 4.64 0.51 ) ( 4.97 0.59 ) ;
-      RECT ( 4.64 0.34 ) ( 4.72 0.51 ) ;
-      RECT ( 4.89 0.34 ) ( 4.97 0.51 ) ;
-      RECT ( 4.64 0.24 ) ( 4.97 0.34 ) ;
-      RECT ( 0 0.09 ) ( 5.76 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
-      RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
-      RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
-      RECT ( 5.61 -0.09 ) ( 5.76 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 5.76 -0.09 ) ;
+      RECT ( 0 3.415 ) ( 5.76 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.475 3.415 ) ;
+      RECT ( 4.645 3.245 ) ( 4.955 3.415 ) ;
+      RECT ( 5.125 3.245 ) ( 5.435 3.415 ) ;
+      RECT ( 5.605 3.245 ) ( 5.76 3.415 ) ;
+      RECT ( 0 3.09 ) ( 5.76 3.245 ) ;
+      RECT ( 1.755 2.99 ) ( 2.085 3.09 ) ;
+      RECT ( 1.755 2.82 ) ( 1.835 2.99 ) ;
+      RECT ( 2.005 2.82 ) ( 2.085 2.99 ) ;
+      RECT ( 1.755 2.74 ) ( 2.085 2.82 ) ;
+      RECT ( 4.635 2.99 ) ( 4.965 3.09 ) ;
+      RECT ( 4.635 2.82 ) ( 4.715 2.99 ) ;
+      RECT ( 4.885 2.82 ) ( 4.965 2.99 ) ;
+      RECT ( 4.635 2.74 ) ( 4.965 2.82 ) ;
+      RECT ( 0.555 2.425 ) ( 0.885 2.505 ) ;
+      RECT ( 0.555 2.255 ) ( 0.635 2.425 ) ;
+      RECT ( 0.805 2.255 ) ( 0.885 2.425 ) ;
+      RECT ( 0.555 2.175 ) ( 0.885 2.255 ) ;
+      RECT ( 3.195 2.425 ) ( 3.525 2.505 ) ;
+      RECT ( 3.195 2.255 ) ( 3.275 2.425 ) ;
+      RECT ( 3.445 2.255 ) ( 3.525 2.425 ) ;
+      RECT ( 3.195 2.175 ) ( 3.525 2.255 ) ;
+      RECT ( 1.275 2.01 ) ( 1.605 2.09 ) ;
+      RECT ( 1.275 1.84 ) ( 1.355 2.01 ) ;
+      RECT ( 1.525 1.84 ) ( 1.605 2.01 ) ;
+      RECT ( 1.275 1.76 ) ( 1.605 1.84 ) ;
+      RECT ( 2.715 2.01 ) ( 3.025 2.09 ) ;
+      RECT ( 2.715 1.84 ) ( 2.795 2.01 ) ;
+      RECT ( 2.965 2.005 ) ( 3.025 2.01 ) ;
+      RECT ( 4.155 2.01 ) ( 4.485 2.09 ) ;
+      RECT ( 2.965 1.84 ) ( 3.045 2.005 ) ;
+      RECT ( 2.715 1.76 ) ( 3.045 1.84 ) ;
+      RECT ( 4.155 1.84 ) ( 4.235 2.01 ) ;
+      RECT ( 4.405 1.84 ) ( 4.485 2.01 ) ;
+      RECT ( 4.155 1.76 ) ( 4.485 1.84 ) ;
+      RECT ( 1.275 1.075 ) ( 1.605 1.155 ) ;
+      RECT ( 1.275 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.905 ) ( 1.605 1.075 ) ;
+      RECT ( 1.275 0.825 ) ( 1.605 0.905 ) ;
+      RECT ( 2.715 1.075 ) ( 3.045 1.155 ) ;
+      RECT ( 2.715 0.905 ) ( 2.795 1.075 ) ;
+      RECT ( 2.965 0.905 ) ( 3.045 1.075 ) ;
+      RECT ( 2.715 0.825 ) ( 3.045 0.905 ) ;
+      RECT ( 4.155 1.075 ) ( 4.485 1.155 ) ;
+      RECT ( 4.155 0.905 ) ( 4.235 1.075 ) ;
+      RECT ( 4.405 0.905 ) ( 4.485 1.075 ) ;
+      RECT ( 4.155 0.825 ) ( 4.485 0.905 ) ;
+      RECT ( 0.555 0.67 ) ( 0.885 0.75 ) ;
+      RECT ( 0.555 0.5 ) ( 0.635 0.67 ) ;
+      RECT ( 0.805 0.5 ) ( 0.885 0.67 ) ;
+      RECT ( 0.555 0.42 ) ( 0.885 0.5 ) ;
+      RECT ( 4.635 0.51 ) ( 4.965 0.59 ) ;
+      RECT ( 4.635 0.34 ) ( 4.715 0.51 ) ;
+      RECT ( 4.885 0.34 ) ( 4.965 0.51 ) ;
+      RECT ( 4.635 0.24 ) ( 4.965 0.34 ) ;
+      RECT ( 0 0.085 ) ( 5.76 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.475 0.085 ) ;
+      RECT ( 4.645 -0.085 ) ( 4.955 0.085 ) ;
+      RECT ( 5.125 -0.085 ) ( 5.435 0.085 ) ;
+      RECT ( 5.605 -0.085 ) ( 5.76 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 5.76 -0.085 ) ;
     LAYER metal1 ;
-      RECT ( 0 3.42 ) ( 5.76 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
-      RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
-      RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
-      RECT ( 5.61 3.25 ) ( 5.76 3.42 ) ;
-      RECT ( 0 3.09 ) ( 5.76 3.25 ) ;
-      RECT ( 1.78 2.99 ) ( 2.07 3.09 ) ;
-      RECT ( 1.78 2.82 ) ( 1.84 2.99 ) ;
-      RECT ( 2.01 2.82 ) ( 2.07 2.99 ) ;
-      RECT ( 1.78 2.76 ) ( 2.07 2.82 ) ;
-      RECT ( 4.66 2.99 ) ( 4.95 3.09 ) ;
-      RECT ( 4.66 2.82 ) ( 4.72 2.99 ) ;
-      RECT ( 4.89 2.82 ) ( 4.95 2.99 ) ;
-      RECT ( 4.66 2.76 ) ( 4.95 2.82 ) ;
-      RECT ( 0.58 2.43 ) ( 0.87 2.49 ) ;
-      RECT ( 0.58 2.26 ) ( 0.64 2.43 ) ;
-      RECT ( 0.81 2.41 ) ( 0.87 2.43 ) ;
-      RECT ( 3.22 2.43 ) ( 3.51 2.49 ) ;
-      RECT ( 3.22 2.41 ) ( 3.28 2.43 ) ;
-      RECT ( 0.81 2.27 ) ( 3.28 2.41 ) ;
-      RECT ( 0.81 2.26 ) ( 0.87 2.27 ) ;
-      RECT ( 0.58 2.2 ) ( 0.87 2.26 ) ;
-      RECT ( 3.22 2.26 ) ( 3.28 2.27 ) ;
-      RECT ( 3.45 2.26 ) ( 3.51 2.43 ) ;
-      RECT ( 3.22 2.2 ) ( 3.51 2.26 ) ;
-      RECT ( 0.65 0.73 ) ( 0.79 2.2 ) ;
-      RECT ( 1.3 2.01 ) ( 1.59 2.07 ) ;
-      RECT ( 1.3 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.59 2.01 ) ;
-      RECT ( 1.3 1.78 ) ( 1.59 1.84 ) ;
-      RECT ( 2.74 2.01 ) ( 3.03 2.07 ) ;
-      RECT ( 2.74 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.03 2.01 ) ;
-      RECT ( 2.74 1.78 ) ( 3.03 1.84 ) ;
-      RECT ( 4.18 2.01 ) ( 4.47 2.07 ) ;
-      RECT ( 4.18 1.84 ) ( 4.24 2.01 ) ;
-      RECT ( 4.41 1.84 ) ( 4.47 2.01 ) ;
-      RECT ( 4.18 1.78 ) ( 4.47 1.84 ) ;
-      RECT ( 1.37 1.14 ) ( 1.51 1.78 ) ;
-      RECT ( 2.81 1.14 ) ( 2.95 1.78 ) ;
-      RECT ( 4.25 1.14 ) ( 4.39 1.78 ) ;
-      RECT ( 1.3 1.08 ) ( 1.59 1.14 ) ;
-      RECT ( 1.3 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 1.59 1.08 ) ;
-      RECT ( 1.3 0.85 ) ( 1.59 0.91 ) ;
-      RECT ( 2.74 1.08 ) ( 3.03 1.14 ) ;
-      RECT ( 2.74 0.91 ) ( 2.8 1.08 ) ;
-      RECT ( 2.97 0.91 ) ( 3.03 1.08 ) ;
-      RECT ( 2.74 0.85 ) ( 3.03 0.91 ) ;
-      RECT ( 4.18 1.08 ) ( 4.47 1.14 ) ;
-      RECT ( 4.18 0.91 ) ( 4.24 1.08 ) ;
-      RECT ( 4.41 0.91 ) ( 4.47 1.08 ) ;
-      RECT ( 4.18 0.85 ) ( 4.47 0.91 ) ;
-      RECT ( 0.58 0.67 ) ( 0.87 0.73 ) ;
-      RECT ( 0.58 0.5 ) ( 0.64 0.67 ) ;
-      RECT ( 0.81 0.5 ) ( 0.87 0.67 ) ;
-      RECT ( 0.58 0.44 ) ( 0.87 0.5 ) ;
-      RECT ( 4.66 0.51 ) ( 4.95 0.57 ) ;
-      RECT ( 4.66 0.34 ) ( 4.72 0.51 ) ;
-      RECT ( 4.89 0.34 ) ( 4.95 0.51 ) ;
-      RECT ( 4.66 0.24 ) ( 4.95 0.34 ) ;
-      RECT ( 0 0.09 ) ( 5.76 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
-      RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
-      RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
-      RECT ( 5.61 -0.09 ) ( 5.76 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 5.76 -0.09 ) ;
+      RECT ( 0 3.415 ) ( 5.76 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.475 3.415 ) ;
+      RECT ( 4.645 3.245 ) ( 4.955 3.415 ) ;
+      RECT ( 5.125 3.245 ) ( 5.435 3.415 ) ;
+      RECT ( 5.605 3.245 ) ( 5.76 3.415 ) ;
+      RECT ( 0 3.09 ) ( 5.76 3.245 ) ;
+      RECT ( 1.775 2.99 ) ( 2.065 3.09 ) ;
+      RECT ( 1.775 2.82 ) ( 1.835 2.99 ) ;
+      RECT ( 2.005 2.82 ) ( 2.065 2.99 ) ;
+      RECT ( 1.775 2.76 ) ( 2.065 2.82 ) ;
+      RECT ( 4.655 2.99 ) ( 4.945 3.09 ) ;
+      RECT ( 4.655 2.82 ) ( 4.715 2.99 ) ;
+      RECT ( 4.885 2.82 ) ( 4.945 2.99 ) ;
+      RECT ( 4.655 2.76 ) ( 4.945 2.82 ) ;
+      RECT ( 0.575 2.425 ) ( 0.865 2.485 ) ;
+      RECT ( 0.575 2.255 ) ( 0.635 2.425 ) ;
+      RECT ( 0.805 2.41 ) ( 0.865 2.425 ) ;
+      RECT ( 3.215 2.425 ) ( 3.505 2.485 ) ;
+      RECT ( 3.215 2.41 ) ( 3.275 2.425 ) ;
+      RECT ( 0.805 2.27 ) ( 3.275 2.41 ) ;
+      RECT ( 0.805 2.255 ) ( 0.865 2.27 ) ;
+      RECT ( 0.575 2.195 ) ( 0.865 2.255 ) ;
+      RECT ( 3.215 2.255 ) ( 3.275 2.27 ) ;
+      RECT ( 3.445 2.255 ) ( 3.505 2.425 ) ;
+      RECT ( 3.215 2.195 ) ( 3.505 2.255 ) ;
+      RECT ( 0.65 0.73 ) ( 0.79 2.195 ) ;
+      RECT ( 1.295 2.01 ) ( 1.585 2.07 ) ;
+      RECT ( 1.295 1.84 ) ( 1.355 2.01 ) ;
+      RECT ( 1.525 1.84 ) ( 1.585 2.01 ) ;
+      RECT ( 1.295 1.78 ) ( 1.585 1.84 ) ;
+      RECT ( 2.735 2.01 ) ( 3.025 2.07 ) ;
+      RECT ( 2.735 1.84 ) ( 2.795 2.01 ) ;
+      RECT ( 2.965 1.84 ) ( 3.025 2.01 ) ;
+      RECT ( 2.735 1.78 ) ( 3.025 1.84 ) ;
+      RECT ( 4.175 2.01 ) ( 4.465 2.07 ) ;
+      RECT ( 4.175 1.84 ) ( 4.235 2.01 ) ;
+      RECT ( 4.405 1.84 ) ( 4.465 2.01 ) ;
+      RECT ( 4.175 1.78 ) ( 4.465 1.84 ) ;
+      RECT ( 1.37 1.135 ) ( 1.51 1.78 ) ;
+      RECT ( 2.81 1.135 ) ( 2.95 1.78 ) ;
+      RECT ( 4.25 1.135 ) ( 4.39 1.78 ) ;
+      RECT ( 1.295 1.075 ) ( 1.585 1.135 ) ;
+      RECT ( 1.295 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.905 ) ( 1.585 1.075 ) ;
+      RECT ( 1.295 0.845 ) ( 1.585 0.905 ) ;
+      RECT ( 2.735 1.075 ) ( 3.025 1.135 ) ;
+      RECT ( 2.735 0.905 ) ( 2.795 1.075 ) ;
+      RECT ( 2.965 0.905 ) ( 3.025 1.075 ) ;
+      RECT ( 2.735 0.845 ) ( 3.025 0.905 ) ;
+      RECT ( 4.175 1.075 ) ( 4.465 1.135 ) ;
+      RECT ( 4.175 0.905 ) ( 4.235 1.075 ) ;
+      RECT ( 4.405 0.905 ) ( 4.465 1.075 ) ;
+      RECT ( 4.175 0.845 ) ( 4.465 0.905 ) ;
+      RECT ( 0.575 0.67 ) ( 0.865 0.73 ) ;
+      RECT ( 0.575 0.5 ) ( 0.635 0.67 ) ;
+      RECT ( 0.805 0.5 ) ( 0.865 0.67 ) ;
+      RECT ( 0.575 0.44 ) ( 0.865 0.5 ) ;
+      RECT ( 4.655 0.51 ) ( 4.945 0.57 ) ;
+      RECT ( 4.655 0.34 ) ( 4.715 0.51 ) ;
+      RECT ( 4.885 0.34 ) ( 4.945 0.51 ) ;
+      RECT ( 4.655 0.24 ) ( 4.945 0.34 ) ;
+      RECT ( 0 0.085 ) ( 5.76 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.475 0.085 ) ;
+      RECT ( 4.645 -0.085 ) ( 4.955 0.085 ) ;
+      RECT ( 5.125 -0.085 ) ( 5.435 0.085 ) ;
+      RECT ( 5.605 -0.085 ) ( 5.76 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 5.76 -0.085 ) ;
 
   end
 END NAND3X1
diff --git a/cells/lef/NOR2X1.lef.beforemagic b/cells/lef/NOR2X1.lef.beforemagic
deleted file mode 100644
index ba82ddd..0000000
--- a/cells/lef/NOR2X1.lef.beforemagic
+++ /dev/null
@@ -1,207 +0,0 @@
-MACRO NOR2X1
- CLASS CORE ;
- FOREIGN NOR2X1 0 0 ;
- SIZE 4.32 BY 3.33 ;
- ORIGIN 0 0 ;
- SYMMETRY X Y R90 ;
- SITE unit ;
-  PIN vdd
-   DIRECTION INOUT ;
-   USE POWER ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER li1 ;
-        RECT 0.00000000 3.09000000 4.32000000 3.57000000 ;
-       LAYER met1 ;
-        RECT 0.00000000 3.09000000 4.32000000 3.57000000 ;
-    END
-  END vdd
-
-  PIN gnd
-   DIRECTION INOUT ;
-   USE GROUND ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER li1 ;
-        RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
-       LAYER met1 ;
-        RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
-    END
-  END gnd
-
-  PIN Y
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 0.81500000 0.44000000 1.10500000 0.51500000 ;
-        RECT 3.21500000 0.44000000 3.50500000 0.51500000 ;
-        RECT 0.81500000 0.51500000 3.50500000 0.65500000 ;
-        RECT 0.81500000 0.65500000 1.10500000 0.73000000 ;
-        RECT 3.21500000 0.65500000 3.50500000 0.73000000 ;
-        RECT 3.29000000 0.73000000 3.43000000 2.19500000 ;
-        RECT 3.21500000 2.19500000 3.50500000 2.48500000 ;
-    END
-  END Y
-
-  PIN A
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
-        RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
-        RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
-    END
-  END A
-
-  PIN B
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
-        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
-        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-    END
-  END B
-
-
-  OBS
-    LAYER locali ;
-      RECT ( 0 3.42 ) ( 4.32 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.32 3.42 ) ;
-      RECT ( 0 3.09 ) ( 4.32 3.25 ) ;
-      RECT ( 0.56 2.99 ) ( 0.89 3.09 ) ;
-      RECT ( 0.56 2.82 ) ( 0.64 2.99 ) ;
-      RECT ( 0.81 2.82 ) ( 0.89 2.99 ) ;
-      RECT ( 0.56 2.74 ) ( 0.89 2.82 ) ;
-      RECT ( 3.2 2.43 ) ( 3.53 2.51 ) ;
-      RECT ( 3.2 2.26 ) ( 3.28 2.43 ) ;
-      RECT ( 3.45 2.26 ) ( 3.53 2.43 ) ;
-      RECT ( 3.2 2.18 ) ( 3.53 2.26 ) ;
-      RECT ( 1.28 2.01 ) ( 1.61 2.09 ) ;
-      RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
-      RECT ( 1.28 1.76 ) ( 1.61 1.84 ) ;
-      RECT ( 2.72 2.01 ) ( 3.03 2.09 ) ;
-      RECT ( 2.72 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.05 2.01 ) ;
-      RECT ( 2.72 1.76 ) ( 3.05 1.84 ) ;
-      RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
-      RECT ( 1.28 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
-      RECT ( 1.28 0.83 ) ( 1.61 0.91 ) ;
-      RECT ( 2.72 1.08 ) ( 3.05 1.16 ) ;
-      RECT ( 2.72 0.91 ) ( 2.8 1.08 ) ;
-      RECT ( 2.97 0.92 ) ( 3.05 1.08 ) ;
-      RECT ( 2.97 0.91 ) ( 3.03 0.92 ) ;
-      RECT ( 2.72 0.83 ) ( 3.03 0.91 ) ;
-      RECT ( 0.8 0.67 ) ( 1.11 0.75 ) ;
-      RECT ( 0.8 0.5 ) ( 0.88 0.67 ) ;
-      RECT ( 1.05 0.66 ) ( 1.11 0.67 ) ;
-      RECT ( 3.2 0.67 ) ( 3.53 0.75 ) ;
-      RECT ( 1.05 0.5 ) ( 1.13 0.66 ) ;
-      RECT ( 0.8 0.42 ) ( 1.13 0.5 ) ;
-      RECT ( 1.76 0.51 ) ( 2.09 0.59 ) ;
-      RECT ( 1.76 0.34 ) ( 1.84 0.51 ) ;
-      RECT ( 2.01 0.34 ) ( 2.09 0.51 ) ;
-      RECT ( 3.2 0.5 ) ( 3.28 0.67 ) ;
-      RECT ( 3.45 0.5 ) ( 3.53 0.67 ) ;
-      RECT ( 3.2 0.42 ) ( 3.53 0.5 ) ;
-      RECT ( 1.76 0.24 ) ( 2.09 0.34 ) ;
-      RECT ( 0 0.09 ) ( 4.32 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.32 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 4.32 -0.09 ) ;
-    LAYER metal1 ;
-      RECT ( 0 3.42 ) ( 4.32 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.32 3.42 ) ;
-      RECT ( 0 3.09 ) ( 4.32 3.25 ) ;
-      RECT ( 0.58 2.99 ) ( 0.87 3.09 ) ;
-      RECT ( 0.58 2.82 ) ( 0.64 2.99 ) ;
-      RECT ( 0.81 2.82 ) ( 0.87 2.99 ) ;
-      RECT ( 0.58 2.76 ) ( 0.87 2.82 ) ;
-      RECT ( 3.22 2.43 ) ( 3.51 2.49 ) ;
-      RECT ( 3.22 2.26 ) ( 3.28 2.43 ) ;
-      RECT ( 3.45 2.26 ) ( 3.51 2.43 ) ;
-      RECT ( 3.22 2.2 ) ( 3.51 2.26 ) ;
-      RECT ( 1.3 2.01 ) ( 1.59 2.07 ) ;
-      RECT ( 1.3 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.59 2.01 ) ;
-      RECT ( 1.3 1.78 ) ( 1.59 1.84 ) ;
-      RECT ( 2.74 2.01 ) ( 3.03 2.07 ) ;
-      RECT ( 2.74 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.03 2.01 ) ;
-      RECT ( 2.74 1.78 ) ( 3.03 1.84 ) ;
-      RECT ( 1.37 1.14 ) ( 1.51 1.78 ) ;
-      RECT ( 2.81 1.14 ) ( 2.95 1.78 ) ;
-      RECT ( 1.3 1.08 ) ( 1.59 1.14 ) ;
-      RECT ( 1.3 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 1.59 1.08 ) ;
-      RECT ( 1.3 0.85 ) ( 1.59 0.91 ) ;
-      RECT ( 2.74 1.08 ) ( 3.03 1.14 ) ;
-      RECT ( 2.74 0.91 ) ( 2.8 1.08 ) ;
-      RECT ( 2.97 0.91 ) ( 3.03 1.08 ) ;
-      RECT ( 2.74 0.85 ) ( 3.03 0.91 ) ;
-      RECT ( 3.29 0.73 ) ( 3.43 2.2 ) ;
-      RECT ( 0.82 0.67 ) ( 1.11 0.73 ) ;
-      RECT ( 0.82 0.5 ) ( 0.88 0.67 ) ;
-      RECT ( 1.05 0.66 ) ( 1.11 0.67 ) ;
-      RECT ( 3.22 0.67 ) ( 3.51 0.73 ) ;
-      RECT ( 3.22 0.66 ) ( 3.28 0.67 ) ;
-      RECT ( 1.05 0.52 ) ( 3.28 0.66 ) ;
-      RECT ( 1.05 0.5 ) ( 1.11 0.52 ) ;
-      RECT ( 0.82 0.44 ) ( 1.11 0.5 ) ;
-      RECT ( 3.22 0.5 ) ( 3.28 0.52 ) ;
-      RECT ( 3.45 0.5 ) ( 3.51 0.67 ) ;
-      RECT ( 3.22 0.44 ) ( 3.51 0.5 ) ;
-      RECT ( 0 0.09 ) ( 4.32 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.32 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 4.32 -0.09 ) ;
-
-  end
-END NOR2X1
diff --git a/cells/lef/NOR2X1.lef.temp b/cells/lef/NOR2X1.lef.temp
deleted file mode 100644
index 2229507..0000000
--- a/cells/lef/NOR2X1.lef.temp
+++ /dev/null
@@ -1,77 +0,0 @@
-MACRO NOR2X1
- CLASS CORE ;
- FOREIGN NOR2X1 0 0 ;
- SIZE 4.32 BY 3.33 ;
- ORIGIN 0 0 ;
- SYMMETRY X Y R90 ;
- SITE unit ;
-  PIN VDD
-   DIRECTION INOUT ;
-   USE POWER ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER li1 ;
-        RECT 0.00000000 3.09000000 4.32000000 3.57000000 ;
-       LAYER met1 ;
-        RECT 0.00000000 3.09000000 4.32000000 3.57000000 ;
-    END
-  END VDD
-
-  PIN GND
-   DIRECTION INOUT ;
-   USE POWER ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER li1 ;
-        RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
-       LAYER met1 ;
-        RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
-    END
-  END GND
-
-  PIN Y
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 0.81500000 0.44000000 1.10500000 0.51500000 ;
-        RECT 3.21500000 0.44000000 3.50500000 0.51500000 ;
-        RECT 0.81500000 0.51500000 3.50500000 0.65500000 ;
-        RECT 0.81500000 0.65500000 1.10500000 0.73000000 ;
-        RECT 3.21500000 0.65500000 3.50500000 0.73000000 ;
-        RECT 3.29000000 0.73000000 3.43000000 2.19500000 ;
-        RECT 3.21500000 2.19500000 3.50500000 2.48500000 ;
-    END
-  END Y
-
-  PIN A
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
-        RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
-        RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
-    END
-  END A
-
-  PIN B
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
-        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
-        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-    END
-  END B
-
-END NOR2X1
diff --git a/cells/lef/OAI21X1.lef.beforemagic b/cells/lef/OAI21X1.lef.beforemagic
deleted file mode 100644
index 1b30b5c..0000000
--- a/cells/lef/OAI21X1.lef.beforemagic
+++ /dev/null
@@ -1,213 +0,0 @@
-MACRO OAI21X1
- CLASS CORE ;
- FOREIGN OAI21X1 0 0 ;
- SIZE 5.76 BY 3.33 ;
- ORIGIN 0 0 ;
- SYMMETRY X Y R90 ;
- SITE unit ;
-  PIN vdd
-   DIRECTION INOUT ;
-   USE POWER ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
-    END
-  END vdd
-
-  PIN gnd
-   DIRECTION INOUT ;
-   USE GROUND ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
-    END
-  END gnd
-
-  PIN Y
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 0.57500000 0.44000000 0.86500000 0.73000000 ;
-        RECT 0.65000000 0.73000000 0.79000000 2.19500000 ;
-        RECT 0.57500000 2.19500000 0.86500000 2.27000000 ;
-        RECT 4.65500000 2.19500000 4.94500000 2.27000000 ;
-        RECT 0.57500000 2.27000000 4.94500000 2.41000000 ;
-        RECT 0.57500000 2.41000000 0.86500000 2.48500000 ;
-        RECT 4.65500000 2.41000000 4.94500000 2.48500000 ;
-    END
-  END Y
-
-  PIN A
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
-        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
-        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-    END
-  END A
-
-  PIN C
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
-        RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
-        RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
-    END
-  END C
-
-  PIN B
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
-        RECT 4.25000000 1.13500000 4.39000000 1.78000000 ;
-        RECT 4.17500000 1.78000000 4.46500000 2.07000000 ;
-    END
-  END B
-
-
-  OBS
-    LAYER locali ;
-      RECT ( 1.76 3 ) ( 2.09 3.08 ) ;
-      RECT ( 1.76 2.83 ) ( 1.84 3 ) ;
-      RECT ( 2.01 2.83 ) ( 2.09 3 ) ;
-      RECT ( 1.76 2.75 ) ( 2.09 2.83 ) ;
-      RECT ( 0.56 2.43 ) ( 0.89 2.51 ) ;
-      RECT ( 0.56 2.26 ) ( 0.64 2.43 ) ;
-      RECT ( 0.81 2.26 ) ( 0.89 2.43 ) ;
-      RECT ( 0.56 2.18 ) ( 0.89 2.26 ) ;
-      RECT ( 4.64 2.43 ) ( 4.97 2.51 ) ;
-      RECT ( 4.64 2.26 ) ( 4.72 2.43 ) ;
-      RECT ( 4.89 2.26 ) ( 4.97 2.43 ) ;
-      RECT ( 4.64 2.18 ) ( 4.97 2.26 ) ;
-      RECT ( 1.28 2.01 ) ( 1.61 2.09 ) ;
-      RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
-      RECT ( 1.28 1.76 ) ( 1.61 1.84 ) ;
-      RECT ( 2.72 2.01 ) ( 3.05 2.09 ) ;
-      RECT ( 2.72 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.05 2.01 ) ;
-      RECT ( 2.72 1.76 ) ( 3.05 1.84 ) ;
-      RECT ( 4.16 2.01 ) ( 4.47 2.09 ) ;
-      RECT ( 4.16 1.84 ) ( 4.24 2.01 ) ;
-      RECT ( 4.41 1.84 ) ( 4.49 2.01 ) ;
-      RECT ( 4.16 1.76 ) ( 4.49 1.84 ) ;
-      RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
-      RECT ( 1.28 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
-      RECT ( 1.28 0.83 ) ( 1.61 0.91 ) ;
-      RECT ( 2.72 1.08 ) ( 3.05 1.16 ) ;
-      RECT ( 2.72 0.91 ) ( 2.8 1.08 ) ;
-      RECT ( 2.97 0.91 ) ( 3.05 1.08 ) ;
-      RECT ( 2.72 0.83 ) ( 3.05 0.91 ) ;
-      RECT ( 4.16 1.08 ) ( 4.49 1.16 ) ;
-      RECT ( 4.16 0.91 ) ( 4.24 1.08 ) ;
-      RECT ( 4.41 0.92 ) ( 4.49 1.08 ) ;
-      RECT ( 4.41 0.91 ) ( 4.47 0.92 ) ;
-      RECT ( 4.16 0.83 ) ( 4.47 0.91 ) ;
-      RECT ( 0.56 0.67 ) ( 0.89 0.75 ) ;
-      RECT ( 0.56 0.5 ) ( 0.64 0.67 ) ;
-      RECT ( 0.81 0.5 ) ( 0.89 0.67 ) ;
-      RECT ( 0.56 0.42 ) ( 0.89 0.5 ) ;
-      RECT ( 2.24 0.67 ) ( 2.55 0.75 ) ;
-      RECT ( 2.24 0.5 ) ( 2.32 0.67 ) ;
-      RECT ( 2.49 0.66 ) ( 2.55 0.67 ) ;
-      RECT ( 4.64 0.67 ) ( 4.97 0.75 ) ;
-      RECT ( 2.49 0.5 ) ( 2.57 0.66 ) ;
-      RECT ( 2.24 0.42 ) ( 2.57 0.5 ) ;
-      RECT ( 3.2 0.5 ) ( 3.53 0.58 ) ;
-      RECT ( 3.2 0.33 ) ( 3.28 0.5 ) ;
-      RECT ( 3.45 0.33 ) ( 3.53 0.5 ) ;
-      RECT ( 4.64 0.5 ) ( 4.72 0.67 ) ;
-      RECT ( 4.89 0.5 ) ( 4.97 0.67 ) ;
-      RECT ( 4.64 0.42 ) ( 4.97 0.5 ) ;
-      RECT ( 3.2 0.27 ) ( 3.53 0.33 ) ;
-      RECT ( 3.2 0.25 ) ( 3.28 0.27 ) ;
-      RECT ( 3.45 0.25 ) ( 3.53 0.27 ) ;
-    LAYER metal1 ;
-      RECT ( 0 3.09 ) ( 5.76 3.57 ) ;
-      RECT ( 1.78 3 ) ( 2.07 3.09 ) ;
-      RECT ( 1.78 2.83 ) ( 1.84 3 ) ;
-      RECT ( 2.01 2.83 ) ( 2.07 3 ) ;
-      RECT ( 1.78 2.77 ) ( 2.07 2.83 ) ;
-      RECT ( 0.58 2.43 ) ( 0.87 2.49 ) ;
-      RECT ( 0.58 2.26 ) ( 0.64 2.43 ) ;
-      RECT ( 0.81 2.41 ) ( 0.87 2.43 ) ;
-      RECT ( 4.66 2.43 ) ( 4.95 2.49 ) ;
-      RECT ( 4.66 2.41 ) ( 4.72 2.43 ) ;
-      RECT ( 0.81 2.27 ) ( 4.72 2.41 ) ;
-      RECT ( 0.81 2.26 ) ( 0.87 2.27 ) ;
-      RECT ( 0.58 2.2 ) ( 0.87 2.26 ) ;
-      RECT ( 4.66 2.26 ) ( 4.72 2.27 ) ;
-      RECT ( 4.89 2.26 ) ( 4.95 2.43 ) ;
-      RECT ( 4.66 2.2 ) ( 4.95 2.26 ) ;
-      RECT ( 0.65 0.73 ) ( 0.79 2.2 ) ;
-      RECT ( 1.3 2.01 ) ( 1.59 2.07 ) ;
-      RECT ( 1.3 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.59 2.01 ) ;
-      RECT ( 1.3 1.78 ) ( 1.59 1.84 ) ;
-      RECT ( 2.74 2.01 ) ( 3.03 2.07 ) ;
-      RECT ( 2.74 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.03 2.01 ) ;
-      RECT ( 2.74 1.78 ) ( 3.03 1.84 ) ;
-      RECT ( 4.18 2.01 ) ( 4.47 2.07 ) ;
-      RECT ( 4.18 1.84 ) ( 4.24 2.01 ) ;
-      RECT ( 4.41 1.84 ) ( 4.47 2.01 ) ;
-      RECT ( 4.18 1.78 ) ( 4.47 1.84 ) ;
-      RECT ( 1.37 1.14 ) ( 1.51 1.78 ) ;
-      RECT ( 2.81 1.14 ) ( 2.95 1.78 ) ;
-      RECT ( 4.25 1.14 ) ( 4.39 1.78 ) ;
-      RECT ( 1.3 1.08 ) ( 1.59 1.14 ) ;
-      RECT ( 1.3 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 1.59 1.08 ) ;
-      RECT ( 1.3 0.85 ) ( 1.59 0.91 ) ;
-      RECT ( 2.74 1.08 ) ( 3.03 1.14 ) ;
-      RECT ( 2.74 0.91 ) ( 2.8 1.08 ) ;
-      RECT ( 2.97 0.91 ) ( 3.03 1.08 ) ;
-      RECT ( 2.74 0.85 ) ( 3.03 0.91 ) ;
-      RECT ( 4.18 1.08 ) ( 4.47 1.14 ) ;
-      RECT ( 4.18 0.91 ) ( 4.24 1.08 ) ;
-      RECT ( 4.41 0.91 ) ( 4.47 1.08 ) ;
-      RECT ( 4.18 0.85 ) ( 4.47 0.91 ) ;
-      RECT ( 0.58 0.67 ) ( 0.87 0.73 ) ;
-      RECT ( 0.58 0.5 ) ( 0.64 0.67 ) ;
-      RECT ( 0.81 0.5 ) ( 0.87 0.67 ) ;
-      RECT ( 0.58 0.44 ) ( 0.87 0.5 ) ;
-      RECT ( 2.26 0.67 ) ( 2.55 0.73 ) ;
-      RECT ( 2.26 0.5 ) ( 2.32 0.67 ) ;
-      RECT ( 2.49 0.66 ) ( 2.55 0.67 ) ;
-      RECT ( 4.66 0.67 ) ( 4.95 0.73 ) ;
-      RECT ( 4.66 0.66 ) ( 4.72 0.67 ) ;
-      RECT ( 2.49 0.52 ) ( 4.72 0.66 ) ;
-      RECT ( 2.49 0.5 ) ( 2.55 0.52 ) ;
-      RECT ( 2.26 0.44 ) ( 2.55 0.5 ) ;
-      RECT ( 4.66 0.5 ) ( 4.72 0.52 ) ;
-      RECT ( 4.89 0.5 ) ( 4.95 0.67 ) ;
-      RECT ( 4.66 0.44 ) ( 4.95 0.5 ) ;
-      RECT ( 3.22 0.27 ) ( 3.51 0.33 ) ;
-      RECT ( 3.22 0.24 ) ( 3.28 0.27 ) ;
-      RECT ( 0 0.1 ) ( 3.28 0.24 ) ;
-      RECT ( 3.45 0.24 ) ( 3.51 0.27 ) ;
-      RECT ( 3.45 0.1 ) ( 5.76 0.24 ) ;
-      RECT ( 0 -0.24 ) ( 5.76 0.1 ) ;
-
-  end
-END OAI21X1
diff --git a/cells/lef/OAI22X1.lef.beforemagic b/cells/lef/OAI22X1.lef.beforemagic
deleted file mode 100644
index 73223ed..0000000
--- a/cells/lef/OAI22X1.lef.beforemagic
+++ /dev/null
@@ -1,257 +0,0 @@
-MACRO OAI22X1
- CLASS CORE ;
- FOREIGN OAI22X1 0 0 ;
- SIZE 7.2 BY 3.33 ;
- ORIGIN 0 0 ;
- SYMMETRY X Y R90 ;
- SITE unit ;
-  PIN vdd
-   DIRECTION INOUT ;
-   USE POWER ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
-    END
-  END vdd
-
-  PIN gnd
-   DIRECTION INOUT ;
-   USE GROUND ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
-    END
-  END gnd
-
-  PIN Y
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 5.13500000 0.84500000 5.42500000 1.13500000 ;
-        RECT 0.81500000 2.19500000 1.10500000 2.27000000 ;
-        RECT 5.21000000 1.13500000 5.35000000 2.27000000 ;
-        RECT 6.09500000 2.19500000 6.38500000 2.27000000 ;
-        RECT 0.81500000 2.27000000 6.38500000 2.41000000 ;
-        RECT 0.81500000 2.41000000 1.10500000 2.48500000 ;
-        RECT 6.09500000 2.41000000 6.38500000 2.48500000 ;
-    END
-  END Y
-
-  PIN D
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 5.61500000 0.84500000 5.90500000 1.13500000 ;
-        RECT 5.69000000 1.13500000 5.83000000 1.78000000 ;
-        RECT 5.61500000 1.78000000 5.90500000 2.07000000 ;
-    END
-  END D
-
-  PIN A
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
-        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
-        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-    END
-  END A
-
-  PIN C
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
-        RECT 4.25000000 1.13500000 4.39000000 1.78000000 ;
-        RECT 4.17500000 1.78000000 4.46500000 2.07000000 ;
-    END
-  END C
-
-  PIN B
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
-        RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
-        RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
-    END
-  END B
-
-
-  OBS
-    LAYER locali ;
-      RECT ( 3.2 3 ) ( 3.53 3.08 ) ;
-      RECT ( 3.2 2.83 ) ( 3.28 3 ) ;
-      RECT ( 3.45 2.83 ) ( 3.53 3 ) ;
-      RECT ( 3.2 2.75 ) ( 3.53 2.83 ) ;
-      RECT ( 0.8 2.43 ) ( 1.13 2.51 ) ;
-      RECT ( 0.8 2.26 ) ( 0.88 2.43 ) ;
-      RECT ( 1.05 2.26 ) ( 1.13 2.43 ) ;
-      RECT ( 6.08 2.43 ) ( 6.41 2.51 ) ;
-      RECT ( 6.08 2.26 ) ( 6.16 2.43 ) ;
-      RECT ( 6.33 2.26 ) ( 6.41 2.43 ) ;
-      RECT ( 0.8 2.18 ) ( 1.11 2.26 ) ;
-      RECT ( 6.1 2.18 ) ( 6.41 2.26 ) ;
-      RECT ( 1.28 2.01 ) ( 1.61 2.09 ) ;
-      RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
-      RECT ( 1.28 1.76 ) ( 1.61 1.84 ) ;
-      RECT ( 2.72 2.01 ) ( 3.05 2.09 ) ;
-      RECT ( 2.72 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.05 2.01 ) ;
-      RECT ( 2.72 1.76 ) ( 3.05 1.84 ) ;
-      RECT ( 4.16 2.01 ) ( 4.49 2.09 ) ;
-      RECT ( 4.16 1.84 ) ( 4.24 2.01 ) ;
-      RECT ( 4.41 1.84 ) ( 4.49 2.01 ) ;
-      RECT ( 4.16 1.76 ) ( 4.49 1.84 ) ;
-      RECT ( 5.6 2.01 ) ( 5.93 2.09 ) ;
-      RECT ( 5.6 1.84 ) ( 5.68 2.01 ) ;
-      RECT ( 5.85 1.84 ) ( 5.93 2.01 ) ;
-      RECT ( 5.6 1.76 ) ( 5.93 1.84 ) ;
-      RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
-      RECT ( 1.28 0.92 ) ( 1.36 1.08 ) ;
-      RECT ( 1.3 0.91 ) ( 1.36 0.92 ) ;
-      RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
-      RECT ( 1.3 0.83 ) ( 1.61 0.91 ) ;
-      RECT ( 2.72 1.08 ) ( 3.05 1.16 ) ;
-      RECT ( 2.72 0.91 ) ( 2.8 1.08 ) ;
-      RECT ( 2.97 0.91 ) ( 3.05 1.08 ) ;
-      RECT ( 2.72 0.83 ) ( 3.05 0.91 ) ;
-      RECT ( 4.16 1.08 ) ( 4.49 1.16 ) ;
-      RECT ( 5.6 1.08 ) ( 5.93 1.16 ) ;
-      RECT ( 4.16 0.91 ) ( 4.24 1.08 ) ;
-      RECT ( 4.41 0.91 ) ( 4.49 1.08 ) ;
-      RECT ( 4.16 0.83 ) ( 4.49 0.91 ) ;
-      RECT ( 5.6 0.92 ) ( 5.68 1.08 ) ;
-      RECT ( 5.2 0.75 ) ( 5.37 0.91 ) ;
-      RECT ( 5.62 0.91 ) ( 5.68 0.92 ) ;
-      RECT ( 5.85 0.91 ) ( 5.93 1.08 ) ;
-      RECT ( 5.62 0.83 ) ( 5.93 0.91 ) ;
-      RECT ( 0.8 0.67 ) ( 1.13 0.75 ) ;
-      RECT ( 0.8 0.5 ) ( 0.88 0.67 ) ;
-      RECT ( 1.05 0.5 ) ( 1.13 0.67 ) ;
-      RECT ( 3.68 0.67 ) ( 3.99 0.75 ) ;
-      RECT ( 0.8 0.42 ) ( 1.13 0.5 ) ;
-      RECT ( 1.76 0.5 ) ( 2.09 0.58 ) ;
-      RECT ( 1.76 0.33 ) ( 1.84 0.5 ) ;
-      RECT ( 2.01 0.33 ) ( 2.09 0.5 ) ;
-      RECT ( 3.68 0.5 ) ( 3.76 0.67 ) ;
-      RECT ( 3.93 0.66 ) ( 3.99 0.67 ) ;
-      RECT ( 5.12 0.67 ) ( 5.45 0.75 ) ;
-      RECT ( 3.93 0.5 ) ( 4.01 0.66 ) ;
-      RECT ( 3.68 0.42 ) ( 4.01 0.5 ) ;
-      RECT ( 5.12 0.5 ) ( 5.2 0.67 ) ;
-      RECT ( 5.37 0.5 ) ( 5.45 0.67 ) ;
-      RECT ( 6.1 0.67 ) ( 6.41 0.75 ) ;
-      RECT ( 6.1 0.66 ) ( 6.16 0.67 ) ;
-      RECT ( 5.12 0.42 ) ( 5.45 0.5 ) ;
-      RECT ( 6.08 0.5 ) ( 6.16 0.66 ) ;
-      RECT ( 6.33 0.5 ) ( 6.41 0.67 ) ;
-      RECT ( 6.08 0.42 ) ( 6.41 0.5 ) ;
-      RECT ( 1.76 0.27 ) ( 2.09 0.33 ) ;
-      RECT ( 1.76 0.25 ) ( 1.84 0.27 ) ;
-      RECT ( 2.01 0.25 ) ( 2.09 0.27 ) ;
-    LAYER metal1 ;
-      RECT ( 0 3.09 ) ( 7.2 3.57 ) ;
-      RECT ( 3.22 3 ) ( 3.51 3.09 ) ;
-      RECT ( 3.22 2.83 ) ( 3.28 3 ) ;
-      RECT ( 3.45 2.83 ) ( 3.51 3 ) ;
-      RECT ( 3.22 2.77 ) ( 3.51 2.83 ) ;
-      RECT ( 0.82 2.43 ) ( 1.11 2.49 ) ;
-      RECT ( 0.82 2.26 ) ( 0.88 2.43 ) ;
-      RECT ( 1.05 2.41 ) ( 1.11 2.43 ) ;
-      RECT ( 6.1 2.43 ) ( 6.39 2.49 ) ;
-      RECT ( 6.1 2.41 ) ( 6.16 2.43 ) ;
-      RECT ( 1.05 2.27 ) ( 6.16 2.41 ) ;
-      RECT ( 1.05 2.26 ) ( 1.11 2.27 ) ;
-      RECT ( 0.82 2.2 ) ( 1.11 2.26 ) ;
-      RECT ( 1.3 2.01 ) ( 1.59 2.07 ) ;
-      RECT ( 1.3 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.59 2.01 ) ;
-      RECT ( 1.3 1.78 ) ( 1.59 1.84 ) ;
-      RECT ( 2.74 2.01 ) ( 3.03 2.07 ) ;
-      RECT ( 2.74 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.03 2.01 ) ;
-      RECT ( 2.74 1.78 ) ( 3.03 1.84 ) ;
-      RECT ( 4.18 2.01 ) ( 4.47 2.07 ) ;
-      RECT ( 4.18 1.84 ) ( 4.24 2.01 ) ;
-      RECT ( 4.41 1.84 ) ( 4.47 2.01 ) ;
-      RECT ( 4.18 1.78 ) ( 4.47 1.84 ) ;
-      RECT ( 1.37 1.14 ) ( 1.51 1.78 ) ;
-      RECT ( 2.81 1.14 ) ( 2.95 1.78 ) ;
-      RECT ( 4.25 1.14 ) ( 4.39 1.78 ) ;
-      RECT ( 5.21 1.14 ) ( 5.35 2.27 ) ;
-      RECT ( 6.1 2.26 ) ( 6.16 2.27 ) ;
-      RECT ( 6.33 2.26 ) ( 6.39 2.43 ) ;
-      RECT ( 6.1 2.2 ) ( 6.39 2.26 ) ;
-      RECT ( 5.62 2.01 ) ( 5.91 2.07 ) ;
-      RECT ( 5.62 1.84 ) ( 5.68 2.01 ) ;
-      RECT ( 5.85 1.84 ) ( 5.91 2.01 ) ;
-      RECT ( 5.62 1.78 ) ( 5.91 1.84 ) ;
-      RECT ( 5.69 1.14 ) ( 5.83 1.78 ) ;
-      RECT ( 1.3 1.08 ) ( 1.59 1.14 ) ;
-      RECT ( 1.3 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 1.59 1.08 ) ;
-      RECT ( 1.3 0.85 ) ( 1.59 0.91 ) ;
-      RECT ( 2.74 1.08 ) ( 3.03 1.14 ) ;
-      RECT ( 2.74 0.91 ) ( 2.8 1.08 ) ;
-      RECT ( 2.97 0.91 ) ( 3.03 1.08 ) ;
-      RECT ( 2.74 0.85 ) ( 3.03 0.91 ) ;
-      RECT ( 4.18 1.08 ) ( 4.47 1.14 ) ;
-      RECT ( 4.18 0.91 ) ( 4.24 1.08 ) ;
-      RECT ( 4.41 0.91 ) ( 4.47 1.08 ) ;
-      RECT ( 4.18 0.85 ) ( 4.47 0.91 ) ;
-      RECT ( 5.14 1.08 ) ( 5.43 1.14 ) ;
-      RECT ( 5.14 0.91 ) ( 5.2 1.08 ) ;
-      RECT ( 5.37 0.91 ) ( 5.43 1.08 ) ;
-      RECT ( 5.14 0.85 ) ( 5.43 0.91 ) ;
-      RECT ( 5.62 1.08 ) ( 5.91 1.14 ) ;
-      RECT ( 5.62 0.91 ) ( 5.68 1.08 ) ;
-      RECT ( 5.85 0.91 ) ( 5.91 1.08 ) ;
-      RECT ( 5.62 0.85 ) ( 5.91 0.91 ) ;
-      RECT ( 0.82 0.67 ) ( 1.11 0.73 ) ;
-      RECT ( 0.82 0.5 ) ( 0.88 0.67 ) ;
-      RECT ( 1.05 0.66 ) ( 1.11 0.67 ) ;
-      RECT ( 3.7 0.67 ) ( 3.99 0.73 ) ;
-      RECT ( 3.7 0.66 ) ( 3.76 0.67 ) ;
-      RECT ( 1.05 0.52 ) ( 3.76 0.66 ) ;
-      RECT ( 1.05 0.5 ) ( 1.11 0.52 ) ;
-      RECT ( 0.82 0.44 ) ( 1.11 0.5 ) ;
-      RECT ( 3.7 0.5 ) ( 3.76 0.52 ) ;
-      RECT ( 3.93 0.66 ) ( 3.99 0.67 ) ;
-      RECT ( 6.1 0.67 ) ( 6.39 0.73 ) ;
-      RECT ( 6.1 0.66 ) ( 6.16 0.67 ) ;
-      RECT ( 3.93 0.52 ) ( 6.16 0.66 ) ;
-      RECT ( 3.93 0.5 ) ( 3.99 0.52 ) ;
-      RECT ( 3.7 0.44 ) ( 3.99 0.5 ) ;
-      RECT ( 6.1 0.5 ) ( 6.16 0.52 ) ;
-      RECT ( 6.33 0.5 ) ( 6.39 0.67 ) ;
-      RECT ( 6.1 0.44 ) ( 6.39 0.5 ) ;
-      RECT ( 1.78 0.27 ) ( 2.07 0.33 ) ;
-      RECT ( 1.78 0.24 ) ( 1.84 0.27 ) ;
-      RECT ( 0 0.1 ) ( 1.84 0.24 ) ;
-      RECT ( 2.01 0.24 ) ( 2.07 0.27 ) ;
-      RECT ( 2.01 0.1 ) ( 7.2 0.24 ) ;
-      RECT ( 0 -0.24 ) ( 7.2 0.1 ) ;
-
-  end
-END OAI22X1
diff --git a/cells/lef/OR2X1.lef b/cells/lef/OR2X1.lef
index 3fcb06e..5e8bec9 100644
--- a/cells/lef/OR2X1.lef
+++ b/cells/lef/OR2X1.lef
@@ -70,17 +70,6 @@
         RECT 4.660 0.440 4.950 0.730 ;
     END
   END Y
-  PIN B
-    DIRECTION INOUT ;
-    USE SIGNAL ;
-    SHAPE ABUTMENT ;
-    PORT
-      LAYER met1 ;
-        RECT 2.740 1.780 3.030 2.070 ;
-        RECT 2.810 1.540 2.950 1.780 ;
-        RECT 2.740 1.250 3.030 1.540 ;
-    END
-  END B
   PIN A
     DIRECTION INOUT ;
     USE SIGNAL ;
@@ -92,6 +81,15 @@
         RECT 1.300 1.250 1.590 1.540 ;
     END
   END A
+  PIN B
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 2.740 1.780 3.030 2.070 ;
+    END
+  END B
   OBS
       LAYER li1 ;
         RECT 0.800 2.430 1.130 2.510 ;
@@ -115,7 +113,7 @@
         RECT 4.410 1.840 4.490 2.010 ;
         RECT 4.160 1.760 4.490 1.840 ;
         RECT 1.360 1.160 1.530 1.310 ;
-        RECT 2.800 1.160 2.970 1.310 ;
+        RECT 2.800 1.160 2.970 1.760 ;
         RECT 1.280 1.080 1.610 1.160 ;
         RECT 1.280 0.910 1.360 1.080 ;
         RECT 1.530 0.910 1.610 1.080 ;
diff --git a/cells/lef/OR2X1.lef.beforemagic b/cells/lef/OR2X1.lef.beforemagic
index cec4811..4efcfd2 100644
--- a/cells/lef/OR2X1.lef.beforemagic
+++ b/cells/lef/OR2X1.lef.beforemagic
@@ -44,19 +44,6 @@
     END
   END Y
 
-  PIN B
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
-        RECT 2.81000000 1.54000000 2.95000000 1.78000000 ;
-        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-    END
-  END B
-
   PIN A
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -70,186 +57,194 @@
     END
   END A
 
+  PIN B
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+    END
+  END B
+
 
   OBS
     LAYER locali ;
-      RECT ( 0 3.42 ) ( 5.76 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
-      RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
-      RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
-      RECT ( 5.61 3.25 ) ( 5.76 3.42 ) ;
-      RECT ( 0 3.09 ) ( 5.76 3.25 ) ;
-      RECT ( 3.2 2.99 ) ( 3.53 3.09 ) ;
-      RECT ( 3.2 2.82 ) ( 3.28 2.99 ) ;
-      RECT ( 3.45 2.82 ) ( 3.53 2.99 ) ;
-      RECT ( 3.2 2.74 ) ( 3.53 2.82 ) ;
-      RECT ( 0.8 2.43 ) ( 1.13 2.51 ) ;
-      RECT ( 0.8 2.26 ) ( 0.88 2.43 ) ;
-      RECT ( 1.05 2.26 ) ( 1.13 2.43 ) ;
-      RECT ( 4.64 2.43 ) ( 4.97 2.51 ) ;
-      RECT ( 4.64 2.26 ) ( 4.72 2.43 ) ;
-      RECT ( 4.89 2.26 ) ( 4.97 2.43 ) ;
-      RECT ( 0.8 2.18 ) ( 1.11 2.26 ) ;
-      RECT ( 4.66 2.18 ) ( 4.97 2.26 ) ;
-      RECT ( 1.28 2.01 ) ( 1.61 2.09 ) ;
-      RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
-      RECT ( 1.28 1.76 ) ( 1.61 1.84 ) ;
-      RECT ( 2.72 2.01 ) ( 3.05 2.09 ) ;
-      RECT ( 2.72 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.05 2.01 ) ;
-      RECT ( 2.72 1.76 ) ( 3.05 1.84 ) ;
-      RECT ( 4.16 2.01 ) ( 4.49 2.09 ) ;
-      RECT ( 4.16 1.84 ) ( 4.24 2.01 ) ;
-      RECT ( 4.41 1.84 ) ( 4.49 2.01 ) ;
-      RECT ( 4.16 1.76 ) ( 4.49 1.84 ) ;
-      RECT ( 1.36 1.16 ) ( 1.53 1.31 ) ;
-      RECT ( 2.8 1.16 ) ( 2.97 1.31 ) ;
-      RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
-      RECT ( 1.28 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
-      RECT ( 2.72 1.08 ) ( 3.05 1.16 ) ;
-      RECT ( 2.72 0.92 ) ( 2.8 1.08 ) ;
-      RECT ( 1.28 0.83 ) ( 1.61 0.91 ) ;
-      RECT ( 2.74 0.91 ) ( 2.8 0.92 ) ;
-      RECT ( 2.97 0.91 ) ( 3.05 1.08 ) ;
-      RECT ( 2.74 0.83 ) ( 3.05 0.91 ) ;
-      RECT ( 4.16 1.08 ) ( 4.49 1.16 ) ;
-      RECT ( 4.16 0.91 ) ( 4.24 1.08 ) ;
-      RECT ( 4.41 0.91 ) ( 4.49 1.08 ) ;
-      RECT ( 4.16 0.83 ) ( 4.49 0.91 ) ;
-      RECT ( 2.24 0.67 ) ( 2.57 0.75 ) ;
-      RECT ( 0.56 0.51 ) ( 0.89 0.59 ) ;
-      RECT ( 0.56 0.34 ) ( 0.64 0.51 ) ;
-      RECT ( 0.81 0.34 ) ( 0.89 0.51 ) ;
-      RECT ( 2.24 0.5 ) ( 2.32 0.67 ) ;
-      RECT ( 2.49 0.5 ) ( 2.57 0.67 ) ;
-      RECT ( 4.66 0.67 ) ( 4.97 0.75 ) ;
-      RECT ( 4.66 0.66 ) ( 4.72 0.67 ) ;
-      RECT ( 2.24 0.42 ) ( 2.57 0.5 ) ;
-      RECT ( 3.2 0.51 ) ( 3.53 0.59 ) ;
-      RECT ( 0.56 0.24 ) ( 0.89 0.34 ) ;
-      RECT ( 3.2 0.34 ) ( 3.28 0.51 ) ;
-      RECT ( 3.45 0.34 ) ( 3.53 0.51 ) ;
-      RECT ( 4.64 0.5 ) ( 4.72 0.66 ) ;
-      RECT ( 4.89 0.5 ) ( 4.97 0.67 ) ;
-      RECT ( 4.64 0.42 ) ( 4.97 0.5 ) ;
-      RECT ( 3.2 0.24 ) ( 3.53 0.34 ) ;
-      RECT ( 0 0.09 ) ( 5.76 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
-      RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
-      RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
-      RECT ( 5.61 -0.09 ) ( 5.76 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 5.76 -0.09 ) ;
+      RECT ( 0 3.415 ) ( 5.76 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.475 3.415 ) ;
+      RECT ( 4.645 3.245 ) ( 4.955 3.415 ) ;
+      RECT ( 5.125 3.245 ) ( 5.435 3.415 ) ;
+      RECT ( 5.605 3.245 ) ( 5.76 3.415 ) ;
+      RECT ( 0 3.09 ) ( 5.76 3.245 ) ;
+      RECT ( 3.195 2.99 ) ( 3.525 3.09 ) ;
+      RECT ( 3.195 2.82 ) ( 3.275 2.99 ) ;
+      RECT ( 3.445 2.82 ) ( 3.525 2.99 ) ;
+      RECT ( 3.195 2.74 ) ( 3.525 2.82 ) ;
+      RECT ( 0.795 2.425 ) ( 1.125 2.505 ) ;
+      RECT ( 0.795 2.255 ) ( 0.875 2.425 ) ;
+      RECT ( 1.045 2.26 ) ( 1.125 2.425 ) ;
+      RECT ( 4.635 2.425 ) ( 4.965 2.505 ) ;
+      RECT ( 4.635 2.26 ) ( 4.715 2.425 ) ;
+      RECT ( 1.045 2.255 ) ( 1.105 2.26 ) ;
+      RECT ( 0.795 2.175 ) ( 1.105 2.255 ) ;
+      RECT ( 4.655 2.255 ) ( 4.715 2.26 ) ;
+      RECT ( 4.885 2.255 ) ( 4.965 2.425 ) ;
+      RECT ( 4.655 2.175 ) ( 4.965 2.255 ) ;
+      RECT ( 1.275 2.01 ) ( 1.605 2.09 ) ;
+      RECT ( 1.275 1.84 ) ( 1.355 2.01 ) ;
+      RECT ( 1.525 1.84 ) ( 1.605 2.01 ) ;
+      RECT ( 1.275 1.76 ) ( 1.605 1.84 ) ;
+      RECT ( 2.715 2.01 ) ( 3.045 2.09 ) ;
+      RECT ( 2.715 1.84 ) ( 2.795 2.01 ) ;
+      RECT ( 2.965 1.84 ) ( 3.045 2.01 ) ;
+      RECT ( 2.715 1.76 ) ( 3.045 1.84 ) ;
+      RECT ( 4.155 2.01 ) ( 4.485 2.09 ) ;
+      RECT ( 4.155 1.84 ) ( 4.235 2.01 ) ;
+      RECT ( 4.405 1.84 ) ( 4.485 2.01 ) ;
+      RECT ( 4.155 1.76 ) ( 4.485 1.84 ) ;
+      RECT ( 1.355 1.155 ) ( 1.525 1.31 ) ;
+      RECT ( 2.795 1.155 ) ( 2.965 1.76 ) ;
+      RECT ( 1.275 1.075 ) ( 1.605 1.155 ) ;
+      RECT ( 1.275 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.905 ) ( 1.605 1.075 ) ;
+      RECT ( 2.715 1.075 ) ( 3.045 1.155 ) ;
+      RECT ( 2.715 0.92 ) ( 2.795 1.075 ) ;
+      RECT ( 1.275 0.825 ) ( 1.605 0.905 ) ;
+      RECT ( 2.735 0.905 ) ( 2.795 0.92 ) ;
+      RECT ( 2.965 0.905 ) ( 3.045 1.075 ) ;
+      RECT ( 2.735 0.825 ) ( 3.045 0.905 ) ;
+      RECT ( 4.155 1.075 ) ( 4.485 1.155 ) ;
+      RECT ( 4.155 0.905 ) ( 4.235 1.075 ) ;
+      RECT ( 4.405 0.905 ) ( 4.485 1.075 ) ;
+      RECT ( 4.155 0.825 ) ( 4.485 0.905 ) ;
+      RECT ( 2.235 0.67 ) ( 2.565 0.75 ) ;
+      RECT ( 0.555 0.51 ) ( 0.885 0.59 ) ;
+      RECT ( 0.555 0.34 ) ( 0.635 0.51 ) ;
+      RECT ( 0.805 0.34 ) ( 0.885 0.51 ) ;
+      RECT ( 2.235 0.5 ) ( 2.315 0.67 ) ;
+      RECT ( 2.485 0.5 ) ( 2.565 0.67 ) ;
+      RECT ( 4.655 0.67 ) ( 4.965 0.75 ) ;
+      RECT ( 4.655 0.655 ) ( 4.715 0.67 ) ;
+      RECT ( 2.235 0.42 ) ( 2.565 0.5 ) ;
+      RECT ( 3.195 0.51 ) ( 3.525 0.59 ) ;
+      RECT ( 0.555 0.24 ) ( 0.885 0.34 ) ;
+      RECT ( 3.195 0.34 ) ( 3.275 0.51 ) ;
+      RECT ( 3.445 0.34 ) ( 3.525 0.51 ) ;
+      RECT ( 4.635 0.5 ) ( 4.715 0.655 ) ;
+      RECT ( 4.885 0.5 ) ( 4.965 0.67 ) ;
+      RECT ( 4.635 0.42 ) ( 4.965 0.5 ) ;
+      RECT ( 3.195 0.24 ) ( 3.525 0.34 ) ;
+      RECT ( 0 0.085 ) ( 5.76 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.475 0.085 ) ;
+      RECT ( 4.645 -0.085 ) ( 4.955 0.085 ) ;
+      RECT ( 5.125 -0.085 ) ( 5.435 0.085 ) ;
+      RECT ( 5.605 -0.085 ) ( 5.76 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 5.76 -0.085 ) ;
     LAYER metal1 ;
-      RECT ( 0 3.42 ) ( 5.76 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
-      RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
-      RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
-      RECT ( 5.61 3.25 ) ( 5.76 3.42 ) ;
-      RECT ( 0 3.09 ) ( 5.76 3.25 ) ;
-      RECT ( 3.22 2.99 ) ( 3.51 3.09 ) ;
-      RECT ( 3.22 2.82 ) ( 3.28 2.99 ) ;
-      RECT ( 3.45 2.82 ) ( 3.51 2.99 ) ;
-      RECT ( 3.22 2.76 ) ( 3.51 2.82 ) ;
-      RECT ( 0.82 2.43 ) ( 1.11 2.49 ) ;
-      RECT ( 0.82 2.26 ) ( 0.88 2.43 ) ;
-      RECT ( 1.05 2.26 ) ( 1.11 2.43 ) ;
-      RECT ( 0.82 2.2 ) ( 1.11 2.26 ) ;
-      RECT ( 4.66 2.43 ) ( 4.95 2.49 ) ;
-      RECT ( 4.66 2.26 ) ( 4.72 2.43 ) ;
-      RECT ( 4.89 2.26 ) ( 4.95 2.43 ) ;
-      RECT ( 4.66 2.2 ) ( 4.95 2.26 ) ;
-      RECT ( 0.89 1.06 ) ( 1.03 2.2 ) ;
-      RECT ( 1.3 2.01 ) ( 1.59 2.07 ) ;
-      RECT ( 1.3 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.59 2.01 ) ;
-      RECT ( 1.3 1.78 ) ( 1.59 1.84 ) ;
-      RECT ( 2.74 2.01 ) ( 3.03 2.07 ) ;
-      RECT ( 2.74 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.03 2.01 ) ;
-      RECT ( 2.74 1.78 ) ( 3.03 1.84 ) ;
-      RECT ( 4.18 2.01 ) ( 4.47 2.07 ) ;
-      RECT ( 4.18 1.84 ) ( 4.24 2.01 ) ;
-      RECT ( 4.41 1.84 ) ( 4.47 2.01 ) ;
-      RECT ( 4.18 1.78 ) ( 4.47 1.84 ) ;
+      RECT ( 0 3.415 ) ( 5.76 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.475 3.415 ) ;
+      RECT ( 4.645 3.245 ) ( 4.955 3.415 ) ;
+      RECT ( 5.125 3.245 ) ( 5.435 3.415 ) ;
+      RECT ( 5.605 3.245 ) ( 5.76 3.415 ) ;
+      RECT ( 0 3.09 ) ( 5.76 3.245 ) ;
+      RECT ( 3.215 2.99 ) ( 3.505 3.09 ) ;
+      RECT ( 3.215 2.82 ) ( 3.275 2.99 ) ;
+      RECT ( 3.445 2.82 ) ( 3.505 2.99 ) ;
+      RECT ( 3.215 2.76 ) ( 3.505 2.82 ) ;
+      RECT ( 0.815 2.425 ) ( 1.105 2.485 ) ;
+      RECT ( 0.815 2.255 ) ( 0.875 2.425 ) ;
+      RECT ( 1.045 2.255 ) ( 1.105 2.425 ) ;
+      RECT ( 0.815 2.195 ) ( 1.105 2.255 ) ;
+      RECT ( 4.655 2.425 ) ( 4.945 2.485 ) ;
+      RECT ( 4.655 2.255 ) ( 4.715 2.425 ) ;
+      RECT ( 4.885 2.255 ) ( 4.945 2.425 ) ;
+      RECT ( 4.655 2.195 ) ( 4.945 2.255 ) ;
+      RECT ( 0.89 1.06 ) ( 1.03 2.195 ) ;
+      RECT ( 1.295 2.01 ) ( 1.585 2.07 ) ;
+      RECT ( 1.295 1.84 ) ( 1.355 2.01 ) ;
+      RECT ( 1.525 1.84 ) ( 1.585 2.01 ) ;
+      RECT ( 1.295 1.78 ) ( 1.585 1.84 ) ;
+      RECT ( 2.735 2.01 ) ( 3.025 2.07 ) ;
+      RECT ( 2.735 1.84 ) ( 2.795 2.01 ) ;
+      RECT ( 2.965 1.84 ) ( 3.025 2.01 ) ;
+      RECT ( 2.735 1.78 ) ( 3.025 1.84 ) ;
+      RECT ( 4.175 2.01 ) ( 4.465 2.07 ) ;
+      RECT ( 4.175 1.84 ) ( 4.235 2.01 ) ;
+      RECT ( 4.405 1.84 ) ( 4.465 2.01 ) ;
+      RECT ( 4.175 1.78 ) ( 4.465 1.84 ) ;
       RECT ( 1.37 1.54 ) ( 1.51 1.78 ) ;
-      RECT ( 2.81 1.54 ) ( 2.95 1.78 ) ;
-      RECT ( 1.3 1.48 ) ( 1.59 1.54 ) ;
-      RECT ( 1.3 1.31 ) ( 1.36 1.48 ) ;
-      RECT ( 1.53 1.31 ) ( 1.59 1.48 ) ;
-      RECT ( 1.3 1.25 ) ( 1.59 1.31 ) ;
-      RECT ( 2.74 1.48 ) ( 3.03 1.54 ) ;
-      RECT ( 2.74 1.31 ) ( 2.8 1.48 ) ;
-      RECT ( 2.97 1.31 ) ( 3.03 1.48 ) ;
-      RECT ( 2.74 1.25 ) ( 3.03 1.31 ) ;
-      RECT ( 4.25 1.14 ) ( 4.39 1.78 ) ;
-      RECT ( 4.18 1.08 ) ( 4.47 1.14 ) ;
-      RECT ( 4.18 1.06 ) ( 4.24 1.08 ) ;
-      RECT ( 0.89 0.92 ) ( 4.24 1.06 ) ;
+      RECT ( 1.295 1.48 ) ( 1.585 1.54 ) ;
+      RECT ( 1.295 1.31 ) ( 1.355 1.48 ) ;
+      RECT ( 1.525 1.31 ) ( 1.585 1.48 ) ;
+      RECT ( 1.295 1.25 ) ( 1.585 1.31 ) ;
+      RECT ( 4.25 1.135 ) ( 4.39 1.78 ) ;
+      RECT ( 4.175 1.075 ) ( 4.465 1.135 ) ;
+      RECT ( 4.175 1.06 ) ( 4.235 1.075 ) ;
+      RECT ( 0.89 0.92 ) ( 4.235 1.06 ) ;
       RECT ( 2.33 0.73 ) ( 2.47 0.92 ) ;
-      RECT ( 4.18 0.91 ) ( 4.24 0.92 ) ;
-      RECT ( 4.41 0.91 ) ( 4.47 1.08 ) ;
-      RECT ( 4.18 0.85 ) ( 4.47 0.91 ) ;
-      RECT ( 4.73 0.73 ) ( 4.87 2.2 ) ;
-      RECT ( 2.26 0.67 ) ( 2.55 0.73 ) ;
-      RECT ( 0.58 0.51 ) ( 0.87 0.57 ) ;
-      RECT ( 0.58 0.34 ) ( 0.64 0.51 ) ;
-      RECT ( 0.81 0.34 ) ( 0.87 0.51 ) ;
-      RECT ( 2.26 0.5 ) ( 2.32 0.67 ) ;
-      RECT ( 2.49 0.5 ) ( 2.55 0.67 ) ;
-      RECT ( 4.66 0.67 ) ( 4.95 0.73 ) ;
-      RECT ( 2.26 0.44 ) ( 2.55 0.5 ) ;
-      RECT ( 3.22 0.51 ) ( 3.51 0.57 ) ;
-      RECT ( 0.58 0.24 ) ( 0.87 0.34 ) ;
-      RECT ( 3.22 0.34 ) ( 3.28 0.51 ) ;
-      RECT ( 3.45 0.34 ) ( 3.51 0.51 ) ;
-      RECT ( 4.66 0.5 ) ( 4.72 0.67 ) ;
-      RECT ( 4.89 0.5 ) ( 4.95 0.67 ) ;
-      RECT ( 4.66 0.44 ) ( 4.95 0.5 ) ;
-      RECT ( 3.22 0.24 ) ( 3.51 0.34 ) ;
-      RECT ( 0 0.09 ) ( 5.76 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
-      RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
-      RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
-      RECT ( 5.61 -0.09 ) ( 5.76 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 5.76 -0.09 ) ;
+      RECT ( 4.175 0.905 ) ( 4.235 0.92 ) ;
+      RECT ( 4.405 0.905 ) ( 4.465 1.075 ) ;
+      RECT ( 4.175 0.845 ) ( 4.465 0.905 ) ;
+      RECT ( 4.73 0.73 ) ( 4.87 2.195 ) ;
+      RECT ( 2.255 0.67 ) ( 2.545 0.73 ) ;
+      RECT ( 0.575 0.51 ) ( 0.865 0.57 ) ;
+      RECT ( 0.575 0.34 ) ( 0.635 0.51 ) ;
+      RECT ( 0.805 0.34 ) ( 0.865 0.51 ) ;
+      RECT ( 2.255 0.5 ) ( 2.315 0.67 ) ;
+      RECT ( 2.485 0.5 ) ( 2.545 0.67 ) ;
+      RECT ( 4.655 0.67 ) ( 4.945 0.73 ) ;
+      RECT ( 2.255 0.44 ) ( 2.545 0.5 ) ;
+      RECT ( 3.215 0.51 ) ( 3.505 0.57 ) ;
+      RECT ( 0.575 0.24 ) ( 0.865 0.34 ) ;
+      RECT ( 3.215 0.34 ) ( 3.275 0.51 ) ;
+      RECT ( 3.445 0.34 ) ( 3.505 0.51 ) ;
+      RECT ( 4.655 0.5 ) ( 4.715 0.67 ) ;
+      RECT ( 4.885 0.5 ) ( 4.945 0.67 ) ;
+      RECT ( 4.655 0.44 ) ( 4.945 0.5 ) ;
+      RECT ( 3.215 0.24 ) ( 3.505 0.34 ) ;
+      RECT ( 0 0.085 ) ( 5.76 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.475 0.085 ) ;
+      RECT ( 4.645 -0.085 ) ( 4.955 0.085 ) ;
+      RECT ( 5.125 -0.085 ) ( 5.435 0.085 ) ;
+      RECT ( 5.605 -0.085 ) ( 5.76 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 5.76 -0.085 ) ;
 
   end
 END OR2X1
diff --git a/cells/lef/OR2X1.lef.temp b/cells/lef/OR2X1.lef.temp
index 2ed8074..621b59d 100644
--- a/cells/lef/OR2X1.lef.temp
+++ b/cells/lef/OR2X1.lef.temp
@@ -44,19 +44,6 @@
     END
   END Y
 
-  PIN B
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
-        RECT 2.81000000 1.54000000 2.95000000 1.78000000 ;
-        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-    END
-  END B
-
   PIN A
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -70,4 +57,15 @@
     END
   END A
 
+  PIN B
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+    END
+  END B
+
 END OR2X1
diff --git a/cells/lef/OR2X2.lef b/cells/lef/OR2X2.lef
index 635bc09..f276662 100644
--- a/cells/lef/OR2X2.lef
+++ b/cells/lef/OR2X2.lef
@@ -40,6 +40,10 @@
         RECT 0.580 0.340 0.640 0.510 ;
         RECT 0.810 0.340 0.870 0.510 ;
         RECT 0.580 0.240 0.870 0.340 ;
+        RECT 3.220 0.510 3.510 0.570 ;
+        RECT 3.220 0.340 3.280 0.510 ;
+        RECT 3.450 0.340 3.510 0.510 ;
+        RECT 3.220 0.240 3.510 0.340 ;
         RECT 0.000 -0.240 5.760 0.240 ;
     END
     PORT
@@ -66,17 +70,6 @@
         RECT 4.660 0.440 4.950 0.730 ;
     END
   END Y
-  PIN B
-    DIRECTION INOUT ;
-    USE SIGNAL ;
-    SHAPE ABUTMENT ;
-    PORT
-      LAYER met1 ;
-        RECT 2.740 1.780 3.030 2.070 ;
-        RECT 2.810 1.140 2.950 1.780 ;
-        RECT 2.740 0.850 3.030 1.140 ;
-    END
-  END B
   PIN A
     DIRECTION INOUT ;
     USE SIGNAL ;
@@ -84,10 +77,19 @@
     PORT
       LAYER met1 ;
         RECT 1.300 1.780 1.590 2.070 ;
-        RECT 1.370 1.140 1.510 1.780 ;
-        RECT 1.300 0.850 1.590 1.140 ;
     END
   END A
+  PIN B
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 2.740 1.780 3.030 2.070 ;
+        RECT 2.810 1.540 2.950 1.780 ;
+        RECT 2.740 1.250 3.030 1.540 ;
+    END
+  END B
   OBS
       LAYER li1 ;
         RECT 0.800 2.430 1.130 2.510 ;
@@ -110,6 +112,8 @@
         RECT 4.160 1.840 4.240 2.010 ;
         RECT 4.410 1.840 4.490 2.010 ;
         RECT 4.160 1.760 4.490 1.840 ;
+        RECT 1.360 1.160 1.530 1.760 ;
+        RECT 2.800 1.160 2.970 1.310 ;
         RECT 1.280 1.080 1.610 1.160 ;
         RECT 1.280 0.910 1.360 1.080 ;
         RECT 1.530 0.910 1.610 1.080 ;
@@ -135,26 +139,24 @@
       LAYER met1 ;
         RECT 0.820 2.430 1.110 2.490 ;
         RECT 0.820 2.260 0.880 2.430 ;
-        RECT 1.050 2.410 1.110 2.430 ;
-        RECT 1.050 2.270 2.470 2.410 ;
-        RECT 1.050 2.260 1.110 2.270 ;
+        RECT 1.050 2.260 1.110 2.430 ;
         RECT 0.820 2.200 1.110 2.260 ;
-        RECT 2.330 0.730 2.470 2.270 ;
+        RECT 0.890 1.060 1.030 2.200 ;
         RECT 4.180 2.010 4.470 2.070 ;
         RECT 4.180 1.840 4.240 2.010 ;
         RECT 4.410 1.840 4.470 2.010 ;
         RECT 4.180 1.780 4.470 1.840 ;
         RECT 4.250 1.140 4.390 1.780 ;
         RECT 4.180 1.080 4.470 1.140 ;
-        RECT 4.180 0.910 4.240 1.080 ;
+        RECT 4.180 1.060 4.240 1.080 ;
+        RECT 0.890 0.920 4.240 1.060 ;
+        RECT 2.330 0.730 2.470 0.920 ;
+        RECT 4.180 0.910 4.240 0.920 ;
         RECT 4.410 0.910 4.470 1.080 ;
         RECT 4.180 0.850 4.470 0.910 ;
         RECT 2.260 0.670 2.550 0.730 ;
         RECT 2.260 0.500 2.320 0.670 ;
-        RECT 2.490 0.660 2.550 0.670 ;
-        RECT 4.250 0.660 4.390 0.850 ;
-        RECT 2.490 0.520 4.390 0.660 ;
-        RECT 2.490 0.500 2.550 0.520 ;
+        RECT 2.490 0.500 2.550 0.670 ;
         RECT 2.260 0.440 2.550 0.500 ;
   END
 END OR2X2
diff --git a/cells/lef/OR2X2.lef.beforemagic b/cells/lef/OR2X2.lef.beforemagic
index 1f34d29..ca77cec 100644
--- a/cells/lef/OR2X2.lef.beforemagic
+++ b/cells/lef/OR2X2.lef.beforemagic
@@ -44,19 +44,6 @@
     END
   END Y
 
-  PIN B
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
-        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
-        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-    END
-  END B
-
   PIN A
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -64,188 +51,200 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
-        RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
         RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
     END
   END A
 
+  PIN B
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
+        RECT 2.81000000 1.54000000 2.95000000 1.78000000 ;
+        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+    END
+  END B
+
 
   OBS
     LAYER locali ;
-      RECT ( 0 3.42 ) ( 5.76 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
-      RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
-      RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
-      RECT ( 5.61 3.25 ) ( 5.76 3.42 ) ;
-      RECT ( 0 3.09 ) ( 5.76 3.25 ) ;
-      RECT ( 3.2 2.99 ) ( 3.53 3.09 ) ;
-      RECT ( 3.2 2.82 ) ( 3.28 2.99 ) ;
-      RECT ( 3.45 2.82 ) ( 3.53 2.99 ) ;
-      RECT ( 3.2 2.74 ) ( 3.53 2.82 ) ;
-      RECT ( 0.8 2.43 ) ( 1.13 2.51 ) ;
-      RECT ( 0.8 2.26 ) ( 0.88 2.43 ) ;
-      RECT ( 1.05 2.26 ) ( 1.13 2.43 ) ;
-      RECT ( 4.64 2.43 ) ( 4.97 2.51 ) ;
-      RECT ( 4.64 2.26 ) ( 4.72 2.43 ) ;
-      RECT ( 4.89 2.26 ) ( 4.97 2.43 ) ;
-      RECT ( 0.8 2.18 ) ( 1.11 2.26 ) ;
-      RECT ( 4.66 2.18 ) ( 4.97 2.26 ) ;
-      RECT ( 1.28 2.01 ) ( 1.61 2.09 ) ;
-      RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
-      RECT ( 1.28 1.76 ) ( 1.61 1.84 ) ;
-      RECT ( 2.72 2.01 ) ( 3.05 2.09 ) ;
-      RECT ( 2.72 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.05 2.01 ) ;
-      RECT ( 2.72 1.76 ) ( 3.05 1.84 ) ;
-      RECT ( 4.16 2.01 ) ( 4.49 2.09 ) ;
-      RECT ( 4.16 1.84 ) ( 4.24 2.01 ) ;
-      RECT ( 4.41 1.84 ) ( 4.49 2.01 ) ;
-      RECT ( 4.16 1.76 ) ( 4.49 1.84 ) ;
-      RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
-      RECT ( 1.28 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
-      RECT ( 2.72 1.08 ) ( 3.05 1.16 ) ;
-      RECT ( 2.72 0.92 ) ( 2.8 1.08 ) ;
-      RECT ( 1.28 0.83 ) ( 1.61 0.91 ) ;
-      RECT ( 2.74 0.91 ) ( 2.8 0.92 ) ;
-      RECT ( 2.97 0.91 ) ( 3.05 1.08 ) ;
-      RECT ( 2.74 0.83 ) ( 3.05 0.91 ) ;
-      RECT ( 4.16 1.08 ) ( 4.49 1.16 ) ;
-      RECT ( 4.16 0.91 ) ( 4.24 1.08 ) ;
-      RECT ( 4.41 0.91 ) ( 4.49 1.08 ) ;
-      RECT ( 4.16 0.83 ) ( 4.49 0.91 ) ;
-      RECT ( 2.24 0.67 ) ( 2.57 0.75 ) ;
-      RECT ( 0.56 0.51 ) ( 0.89 0.59 ) ;
-      RECT ( 0.56 0.34 ) ( 0.64 0.51 ) ;
-      RECT ( 0.81 0.34 ) ( 0.89 0.51 ) ;
-      RECT ( 2.24 0.5 ) ( 2.32 0.67 ) ;
-      RECT ( 2.49 0.5 ) ( 2.57 0.67 ) ;
-      RECT ( 4.66 0.67 ) ( 4.97 0.75 ) ;
-      RECT ( 4.66 0.66 ) ( 4.72 0.67 ) ;
-      RECT ( 2.24 0.42 ) ( 2.57 0.5 ) ;
-      RECT ( 3.2 0.51 ) ( 3.53 0.59 ) ;
-      RECT ( 0.56 0.24 ) ( 0.89 0.34 ) ;
-      RECT ( 3.2 0.34 ) ( 3.28 0.51 ) ;
-      RECT ( 3.45 0.34 ) ( 3.53 0.51 ) ;
-      RECT ( 4.64 0.5 ) ( 4.72 0.66 ) ;
-      RECT ( 4.89 0.5 ) ( 4.97 0.67 ) ;
-      RECT ( 4.64 0.42 ) ( 4.97 0.5 ) ;
-      RECT ( 3.2 0.24 ) ( 3.53 0.34 ) ;
-      RECT ( 0 0.09 ) ( 5.76 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
-      RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
-      RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
-      RECT ( 5.61 -0.09 ) ( 5.76 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 5.76 -0.09 ) ;
+      RECT ( 0 3.415 ) ( 5.76 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.475 3.415 ) ;
+      RECT ( 4.645 3.245 ) ( 4.955 3.415 ) ;
+      RECT ( 5.125 3.245 ) ( 5.435 3.415 ) ;
+      RECT ( 5.605 3.245 ) ( 5.76 3.415 ) ;
+      RECT ( 0 3.09 ) ( 5.76 3.245 ) ;
+      RECT ( 3.195 2.99 ) ( 3.525 3.09 ) ;
+      RECT ( 3.195 2.82 ) ( 3.275 2.99 ) ;
+      RECT ( 3.445 2.82 ) ( 3.525 2.99 ) ;
+      RECT ( 3.195 2.74 ) ( 3.525 2.82 ) ;
+      RECT ( 0.795 2.425 ) ( 1.125 2.505 ) ;
+      RECT ( 0.795 2.255 ) ( 0.875 2.425 ) ;
+      RECT ( 1.045 2.26 ) ( 1.125 2.425 ) ;
+      RECT ( 4.635 2.425 ) ( 4.965 2.505 ) ;
+      RECT ( 4.635 2.26 ) ( 4.715 2.425 ) ;
+      RECT ( 1.045 2.255 ) ( 1.105 2.26 ) ;
+      RECT ( 0.795 2.175 ) ( 1.105 2.255 ) ;
+      RECT ( 4.655 2.255 ) ( 4.715 2.26 ) ;
+      RECT ( 4.885 2.255 ) ( 4.965 2.425 ) ;
+      RECT ( 4.655 2.175 ) ( 4.965 2.255 ) ;
+      RECT ( 1.275 2.01 ) ( 1.605 2.09 ) ;
+      RECT ( 1.275 1.84 ) ( 1.355 2.01 ) ;
+      RECT ( 1.525 1.84 ) ( 1.605 2.01 ) ;
+      RECT ( 1.275 1.76 ) ( 1.605 1.84 ) ;
+      RECT ( 2.715 2.01 ) ( 3.045 2.09 ) ;
+      RECT ( 2.715 1.84 ) ( 2.795 2.01 ) ;
+      RECT ( 2.965 1.84 ) ( 3.045 2.01 ) ;
+      RECT ( 2.715 1.76 ) ( 3.045 1.84 ) ;
+      RECT ( 4.155 2.01 ) ( 4.485 2.09 ) ;
+      RECT ( 4.155 1.84 ) ( 4.235 2.01 ) ;
+      RECT ( 4.405 1.84 ) ( 4.485 2.01 ) ;
+      RECT ( 4.155 1.76 ) ( 4.485 1.84 ) ;
+      RECT ( 1.355 1.155 ) ( 1.525 1.76 ) ;
+      RECT ( 2.795 1.155 ) ( 2.965 1.31 ) ;
+      RECT ( 1.275 1.075 ) ( 1.605 1.155 ) ;
+      RECT ( 1.275 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.905 ) ( 1.605 1.075 ) ;
+      RECT ( 2.715 1.075 ) ( 3.045 1.155 ) ;
+      RECT ( 2.715 0.92 ) ( 2.795 1.075 ) ;
+      RECT ( 1.275 0.825 ) ( 1.605 0.905 ) ;
+      RECT ( 2.735 0.905 ) ( 2.795 0.92 ) ;
+      RECT ( 2.965 0.905 ) ( 3.045 1.075 ) ;
+      RECT ( 2.735 0.825 ) ( 3.045 0.905 ) ;
+      RECT ( 4.155 1.075 ) ( 4.485 1.155 ) ;
+      RECT ( 4.155 0.905 ) ( 4.235 1.075 ) ;
+      RECT ( 4.405 0.905 ) ( 4.485 1.075 ) ;
+      RECT ( 4.155 0.825 ) ( 4.485 0.905 ) ;
+      RECT ( 2.235 0.67 ) ( 2.565 0.75 ) ;
+      RECT ( 0.555 0.51 ) ( 0.885 0.59 ) ;
+      RECT ( 0.555 0.34 ) ( 0.635 0.51 ) ;
+      RECT ( 0.805 0.34 ) ( 0.885 0.51 ) ;
+      RECT ( 2.235 0.5 ) ( 2.315 0.67 ) ;
+      RECT ( 2.485 0.5 ) ( 2.565 0.67 ) ;
+      RECT ( 4.655 0.67 ) ( 4.965 0.75 ) ;
+      RECT ( 4.655 0.655 ) ( 4.715 0.67 ) ;
+      RECT ( 2.235 0.42 ) ( 2.565 0.5 ) ;
+      RECT ( 3.195 0.51 ) ( 3.525 0.59 ) ;
+      RECT ( 0.555 0.24 ) ( 0.885 0.34 ) ;
+      RECT ( 3.195 0.34 ) ( 3.275 0.51 ) ;
+      RECT ( 3.445 0.34 ) ( 3.525 0.51 ) ;
+      RECT ( 4.635 0.5 ) ( 4.715 0.655 ) ;
+      RECT ( 4.885 0.5 ) ( 4.965 0.67 ) ;
+      RECT ( 4.635 0.42 ) ( 4.965 0.5 ) ;
+      RECT ( 3.195 0.24 ) ( 3.525 0.34 ) ;
+      RECT ( 0 0.085 ) ( 5.76 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.475 0.085 ) ;
+      RECT ( 4.645 -0.085 ) ( 4.955 0.085 ) ;
+      RECT ( 5.125 -0.085 ) ( 5.435 0.085 ) ;
+      RECT ( 5.605 -0.085 ) ( 5.76 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 5.76 -0.085 ) ;
     LAYER metal1 ;
-      RECT ( 0 3.42 ) ( 5.76 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
-      RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
-      RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
-      RECT ( 5.61 3.25 ) ( 5.76 3.42 ) ;
-      RECT ( 0 3.09 ) ( 5.76 3.25 ) ;
-      RECT ( 3.22 2.99 ) ( 3.51 3.09 ) ;
-      RECT ( 3.22 2.82 ) ( 3.28 2.99 ) ;
-      RECT ( 3.45 2.82 ) ( 3.51 2.99 ) ;
-      RECT ( 3.22 2.76 ) ( 3.51 2.82 ) ;
-      RECT ( 0.82 2.43 ) ( 1.11 2.49 ) ;
-      RECT ( 0.82 2.26 ) ( 0.88 2.43 ) ;
-      RECT ( 1.05 2.41 ) ( 1.11 2.43 ) ;
-      RECT ( 4.66 2.43 ) ( 4.95 2.49 ) ;
-      RECT ( 1.05 2.27 ) ( 2.47 2.41 ) ;
-      RECT ( 1.05 2.26 ) ( 1.11 2.27 ) ;
-      RECT ( 0.82 2.2 ) ( 1.11 2.26 ) ;
-      RECT ( 1.3 2.01 ) ( 1.59 2.07 ) ;
-      RECT ( 1.3 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.59 2.01 ) ;
-      RECT ( 1.3 1.78 ) ( 1.59 1.84 ) ;
-      RECT ( 1.37 1.14 ) ( 1.51 1.78 ) ;
-      RECT ( 1.3 1.08 ) ( 1.59 1.14 ) ;
-      RECT ( 1.3 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 1.59 1.08 ) ;
-      RECT ( 1.3 0.85 ) ( 1.59 0.91 ) ;
-      RECT ( 2.33 0.73 ) ( 2.47 2.27 ) ;
-      RECT ( 4.66 2.26 ) ( 4.72 2.43 ) ;
-      RECT ( 4.89 2.26 ) ( 4.95 2.43 ) ;
-      RECT ( 4.66 2.2 ) ( 4.95 2.26 ) ;
-      RECT ( 2.74 2.01 ) ( 3.03 2.07 ) ;
-      RECT ( 2.74 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.03 2.01 ) ;
-      RECT ( 2.74 1.78 ) ( 3.03 1.84 ) ;
-      RECT ( 4.18 2.01 ) ( 4.47 2.07 ) ;
-      RECT ( 4.18 1.84 ) ( 4.24 2.01 ) ;
-      RECT ( 4.41 1.84 ) ( 4.47 2.01 ) ;
-      RECT ( 4.18 1.78 ) ( 4.47 1.84 ) ;
-      RECT ( 2.81 1.14 ) ( 2.95 1.78 ) ;
-      RECT ( 4.25 1.14 ) ( 4.39 1.78 ) ;
-      RECT ( 2.74 1.08 ) ( 3.03 1.14 ) ;
-      RECT ( 2.74 0.91 ) ( 2.8 1.08 ) ;
-      RECT ( 2.97 0.91 ) ( 3.03 1.08 ) ;
-      RECT ( 2.74 0.85 ) ( 3.03 0.91 ) ;
-      RECT ( 4.18 1.08 ) ( 4.47 1.14 ) ;
-      RECT ( 4.18 0.91 ) ( 4.24 1.08 ) ;
-      RECT ( 4.41 0.91 ) ( 4.47 1.08 ) ;
-      RECT ( 4.18 0.85 ) ( 4.47 0.91 ) ;
-      RECT ( 2.26 0.67 ) ( 2.55 0.73 ) ;
-      RECT ( 0.58 0.51 ) ( 0.87 0.57 ) ;
-      RECT ( 0.58 0.34 ) ( 0.64 0.51 ) ;
-      RECT ( 0.81 0.34 ) ( 0.87 0.51 ) ;
-      RECT ( 2.26 0.5 ) ( 2.32 0.67 ) ;
-      RECT ( 2.49 0.66 ) ( 2.55 0.67 ) ;
-      RECT ( 4.25 0.66 ) ( 4.39 0.85 ) ;
-      RECT ( 4.73 0.73 ) ( 4.87 2.2 ) ;
-      RECT ( 2.49 0.52 ) ( 4.39 0.66 ) ;
-      RECT ( 4.66 0.67 ) ( 4.95 0.73 ) ;
-      RECT ( 2.49 0.5 ) ( 2.55 0.52 ) ;
-      RECT ( 2.26 0.44 ) ( 2.55 0.5 ) ;
-      RECT ( 4.66 0.5 ) ( 4.72 0.67 ) ;
-      RECT ( 4.89 0.5 ) ( 4.95 0.67 ) ;
-      RECT ( 4.66 0.44 ) ( 4.95 0.5 ) ;
-      RECT ( 0.58 0.24 ) ( 0.87 0.34 ) ;
-      RECT ( 0 0.09 ) ( 5.76 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
-      RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
-      RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
-      RECT ( 5.61 -0.09 ) ( 5.76 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 5.76 -0.09 ) ;
+      RECT ( 0 3.415 ) ( 5.76 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.475 3.415 ) ;
+      RECT ( 4.645 3.245 ) ( 4.955 3.415 ) ;
+      RECT ( 5.125 3.245 ) ( 5.435 3.415 ) ;
+      RECT ( 5.605 3.245 ) ( 5.76 3.415 ) ;
+      RECT ( 0 3.09 ) ( 5.76 3.245 ) ;
+      RECT ( 3.215 2.99 ) ( 3.505 3.09 ) ;
+      RECT ( 3.215 2.82 ) ( 3.275 2.99 ) ;
+      RECT ( 3.445 2.82 ) ( 3.505 2.99 ) ;
+      RECT ( 3.215 2.76 ) ( 3.505 2.82 ) ;
+      RECT ( 0.815 2.425 ) ( 1.105 2.485 ) ;
+      RECT ( 0.815 2.255 ) ( 0.875 2.425 ) ;
+      RECT ( 1.045 2.255 ) ( 1.105 2.425 ) ;
+      RECT ( 0.815 2.195 ) ( 1.105 2.255 ) ;
+      RECT ( 4.655 2.425 ) ( 4.945 2.485 ) ;
+      RECT ( 4.655 2.255 ) ( 4.715 2.425 ) ;
+      RECT ( 4.885 2.255 ) ( 4.945 2.425 ) ;
+      RECT ( 4.655 2.195 ) ( 4.945 2.255 ) ;
+      RECT ( 0.89 1.06 ) ( 1.03 2.195 ) ;
+      RECT ( 1.295 2.01 ) ( 1.585 2.07 ) ;
+      RECT ( 1.295 1.84 ) ( 1.355 2.01 ) ;
+      RECT ( 1.525 1.84 ) ( 1.585 2.01 ) ;
+      RECT ( 1.295 1.78 ) ( 1.585 1.84 ) ;
+      RECT ( 2.735 2.01 ) ( 3.025 2.07 ) ;
+      RECT ( 2.735 1.84 ) ( 2.795 2.01 ) ;
+      RECT ( 2.965 1.84 ) ( 3.025 2.01 ) ;
+      RECT ( 2.735 1.78 ) ( 3.025 1.84 ) ;
+      RECT ( 4.175 2.01 ) ( 4.465 2.07 ) ;
+      RECT ( 4.175 1.84 ) ( 4.235 2.01 ) ;
+      RECT ( 4.405 1.84 ) ( 4.465 2.01 ) ;
+      RECT ( 4.175 1.78 ) ( 4.465 1.84 ) ;
+      RECT ( 2.81 1.54 ) ( 2.95 1.78 ) ;
+      RECT ( 2.735 1.48 ) ( 3.025 1.54 ) ;
+      RECT ( 2.735 1.31 ) ( 2.795 1.48 ) ;
+      RECT ( 2.965 1.31 ) ( 3.025 1.48 ) ;
+      RECT ( 2.735 1.25 ) ( 3.025 1.31 ) ;
+      RECT ( 4.25 1.135 ) ( 4.39 1.78 ) ;
+      RECT ( 4.175 1.075 ) ( 4.465 1.135 ) ;
+      RECT ( 4.175 1.06 ) ( 4.235 1.075 ) ;
+      RECT ( 0.89 0.92 ) ( 4.235 1.06 ) ;
+      RECT ( 2.33 0.73 ) ( 2.47 0.92 ) ;
+      RECT ( 4.175 0.905 ) ( 4.235 0.92 ) ;
+      RECT ( 4.405 0.905 ) ( 4.465 1.075 ) ;
+      RECT ( 4.175 0.845 ) ( 4.465 0.905 ) ;
+      RECT ( 4.73 0.73 ) ( 4.87 2.195 ) ;
+      RECT ( 2.255 0.67 ) ( 2.545 0.73 ) ;
+      RECT ( 0.575 0.51 ) ( 0.865 0.57 ) ;
+      RECT ( 0.575 0.34 ) ( 0.635 0.51 ) ;
+      RECT ( 0.805 0.34 ) ( 0.865 0.51 ) ;
+      RECT ( 2.255 0.5 ) ( 2.315 0.67 ) ;
+      RECT ( 2.485 0.5 ) ( 2.545 0.67 ) ;
+      RECT ( 4.655 0.67 ) ( 4.945 0.73 ) ;
+      RECT ( 2.255 0.44 ) ( 2.545 0.5 ) ;
+      RECT ( 3.215 0.51 ) ( 3.505 0.57 ) ;
+      RECT ( 0.575 0.24 ) ( 0.865 0.34 ) ;
+      RECT ( 3.215 0.34 ) ( 3.275 0.51 ) ;
+      RECT ( 3.445 0.34 ) ( 3.505 0.51 ) ;
+      RECT ( 4.655 0.5 ) ( 4.715 0.67 ) ;
+      RECT ( 4.885 0.5 ) ( 4.945 0.67 ) ;
+      RECT ( 4.655 0.44 ) ( 4.945 0.5 ) ;
+      RECT ( 3.215 0.24 ) ( 3.505 0.34 ) ;
+      RECT ( 0 0.085 ) ( 5.76 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.475 0.085 ) ;
+      RECT ( 4.645 -0.085 ) ( 4.955 0.085 ) ;
+      RECT ( 5.125 -0.085 ) ( 5.435 0.085 ) ;
+      RECT ( 5.605 -0.085 ) ( 5.76 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 5.76 -0.085 ) ;
 
   end
 END OR2X2
diff --git a/cells/lef/OR2X2.lef.temp b/cells/lef/OR2X2.lef.temp
index cf84bf0..28c3d77 100644
--- a/cells/lef/OR2X2.lef.temp
+++ b/cells/lef/OR2X2.lef.temp
@@ -44,19 +44,6 @@
     END
   END Y
 
-  PIN B
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
-        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
-        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-    END
-  END B
-
   PIN A
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -64,10 +51,21 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
-        RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
         RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
     END
   END A
 
+  PIN B
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
+        RECT 2.81000000 1.54000000 2.95000000 1.78000000 ;
+        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+    END
+  END B
+
 END OR2X2
diff --git a/cells/lef/XNOR2X1.lef b/cells/lef/XNOR2X1.lef
index f129d08..991a7ea 100644
--- a/cells/lef/XNOR2X1.lef
+++ b/cells/lef/XNOR2X1.lef
@@ -78,15 +78,15 @@
     SHAPE ABUTMENT ;
     PORT
       LAYER met1 ;
-        RECT 1.300 2.000 1.590 2.070 ;
-        RECT 2.740 2.000 3.030 2.070 ;
-        RECT 1.300 1.860 3.030 2.000 ;
-        RECT 1.300 1.780 1.590 1.860 ;
-        RECT 2.740 1.780 3.030 1.860 ;
+        RECT 1.300 1.780 1.590 2.070 ;
+        RECT 2.740 1.780 3.030 2.070 ;
         RECT 1.370 1.140 1.510 1.780 ;
         RECT 2.810 1.140 2.950 1.780 ;
-        RECT 1.300 0.850 1.590 1.140 ;
-        RECT 2.740 0.850 3.030 1.140 ;
+        RECT 1.300 1.060 1.590 1.140 ;
+        RECT 2.740 1.060 3.030 1.140 ;
+        RECT 1.300 0.920 3.030 1.060 ;
+        RECT 1.300 0.850 1.590 0.920 ;
+        RECT 2.740 0.850 3.030 0.920 ;
     END
   END B
   PIN A
@@ -96,14 +96,16 @@
     PORT
       LAYER met1 ;
         RECT 4.180 2.000 4.470 2.070 ;
-        RECT 8.500 2.000 8.790 2.070 ;
-        RECT 4.180 1.860 8.790 2.000 ;
+        RECT 4.180 1.860 5.350 2.000 ;
         RECT 4.180 1.780 4.470 1.860 ;
-        RECT 5.690 1.140 5.830 1.860 ;
-        RECT 8.500 1.780 8.790 1.860 ;
+        RECT 5.210 1.060 5.350 1.860 ;
+        RECT 8.500 1.780 8.790 2.070 ;
         RECT 8.570 1.140 8.710 1.780 ;
-        RECT 5.620 0.850 5.910 1.140 ;
-        RECT 8.500 0.850 8.790 1.140 ;
+        RECT 5.620 1.060 5.910 1.140 ;
+        RECT 8.500 1.060 8.790 1.140 ;
+        RECT 5.210 0.920 8.790 1.060 ;
+        RECT 5.620 0.850 5.910 0.920 ;
+        RECT 8.500 0.850 8.790 0.920 ;
     END
   END A
   OBS
@@ -142,7 +144,6 @@
         RECT 4.410 0.910 4.470 0.920 ;
         RECT 4.160 0.830 4.470 0.910 ;
         RECT 4.720 0.750 4.890 2.180 ;
-        RECT 5.680 2.090 5.850 2.260 ;
         RECT 7.120 2.090 7.290 2.660 ;
         RECT 8.960 2.430 9.290 2.510 ;
         RECT 8.960 2.260 9.040 2.430 ;
@@ -197,22 +198,20 @@
         RECT 0.580 2.430 0.870 2.490 ;
         RECT 0.580 2.260 0.640 2.430 ;
         RECT 0.810 2.260 0.870 2.430 ;
-        RECT 5.620 2.430 5.910 2.490 ;
-        RECT 5.620 2.410 5.680 2.430 ;
-        RECT 0.580 2.200 0.870 2.260 ;
-        RECT 3.770 2.270 5.680 2.410 ;
-        RECT 0.650 0.730 0.790 2.200 ;
-        RECT 3.770 1.060 3.910 2.270 ;
-        RECT 5.620 2.260 5.680 2.270 ;
-        RECT 5.850 2.410 5.910 2.430 ;
         RECT 8.980 2.430 9.270 2.490 ;
         RECT 8.980 2.410 9.040 2.430 ;
-        RECT 5.850 2.270 9.040 2.410 ;
-        RECT 5.850 2.260 5.910 2.270 ;
-        RECT 5.620 2.200 5.910 2.260 ;
+        RECT 0.580 2.200 0.870 2.260 ;
+        RECT 3.770 2.270 9.040 2.410 ;
+        RECT 0.650 0.730 0.790 2.200 ;
+        RECT 3.770 1.060 3.910 2.270 ;
+        RECT 5.690 2.070 5.830 2.270 ;
         RECT 8.980 2.260 9.040 2.270 ;
         RECT 9.210 2.260 9.270 2.430 ;
         RECT 8.980 2.200 9.270 2.260 ;
+        RECT 5.620 2.010 5.910 2.070 ;
+        RECT 5.620 1.840 5.680 2.010 ;
+        RECT 5.850 1.840 5.910 2.010 ;
+        RECT 5.620 1.780 5.910 1.840 ;
         RECT 4.180 1.080 4.470 1.140 ;
         RECT 4.180 1.060 4.240 1.080 ;
         RECT 3.770 0.920 4.240 1.060 ;
diff --git a/cells/lef/XNOR2X1.lef.beforemagic b/cells/lef/XNOR2X1.lef.beforemagic
index 188c422..559506d 100644
--- a/cells/lef/XNOR2X1.lef.beforemagic
+++ b/cells/lef/XNOR2X1.lef.beforemagic
@@ -49,15 +49,15 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
-        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
+        RECT 1.29500000 0.84500000 1.58500000 0.92000000 ;
+        RECT 2.73500000 0.84500000 3.02500000 0.92000000 ;
+        RECT 1.29500000 0.92000000 3.02500000 1.06000000 ;
+        RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
+        RECT 2.73500000 1.06000000 3.02500000 1.13500000 ;
         RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
         RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
-        RECT 1.29500000 1.78000000 1.58500000 1.85500000 ;
-        RECT 2.73500000 1.78000000 3.02500000 1.85500000 ;
-        RECT 1.29500000 1.85500000 3.02500000 1.99500000 ;
-        RECT 1.29500000 1.99500000 1.58500000 2.07000000 ;
-        RECT 2.73500000 1.99500000 3.02500000 2.07000000 ;
+        RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
+        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
     END
   END B
 
@@ -68,311 +68,316 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 5.61500000 0.84500000 5.90500000 1.13500000 ;
-        RECT 8.49500000 0.84500000 8.78500000 1.13500000 ;
+        RECT 5.61500000 0.84500000 5.90500000 0.92000000 ;
+        RECT 8.49500000 0.84500000 8.78500000 0.92000000 ;
+        RECT 5.21000000 0.92000000 8.78500000 1.06000000 ;
+        RECT 5.61500000 1.06000000 5.90500000 1.13500000 ;
+        RECT 8.49500000 1.06000000 8.78500000 1.13500000 ;
         RECT 8.57000000 1.13500000 8.71000000 1.78000000 ;
         RECT 4.17500000 1.78000000 4.46500000 1.85500000 ;
-        RECT 5.69000000 1.13500000 5.83000000 1.85500000 ;
-        RECT 8.49500000 1.78000000 8.78500000 1.85500000 ;
-        RECT 4.17500000 1.85500000 8.78500000 1.99500000 ;
+        RECT 5.21000000 1.06000000 5.35000000 1.85500000 ;
+        RECT 4.17500000 1.85500000 5.35000000 1.99500000 ;
         RECT 4.17500000 1.99500000 4.46500000 2.07000000 ;
-        RECT 8.49500000 1.99500000 8.78500000 2.07000000 ;
+        RECT 8.49500000 1.78000000 8.78500000 2.07000000 ;
     END
   END A
 
 
   OBS
     LAYER locali ;
-      RECT ( 0 3.42 ) ( 10.08 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
-      RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
-      RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
-      RECT ( 5.61 3.25 ) ( 5.92 3.42 ) ;
-      RECT ( 6.09 3.25 ) ( 6.4 3.42 ) ;
-      RECT ( 6.57 3.25 ) ( 6.88 3.42 ) ;
-      RECT ( 7.05 3.25 ) ( 7.36 3.42 ) ;
-      RECT ( 7.53 3.25 ) ( 7.84 3.42 ) ;
-      RECT ( 8.01 3.25 ) ( 8.32 3.42 ) ;
-      RECT ( 8.49 3.25 ) ( 8.8 3.42 ) ;
-      RECT ( 8.97 3.25 ) ( 9.28 3.42 ) ;
-      RECT ( 9.45 3.25 ) ( 9.76 3.42 ) ;
-      RECT ( 9.93 3.25 ) ( 10.08 3.42 ) ;
-      RECT ( 0 3.09 ) ( 10.08 3.25 ) ;
-      RECT ( 1.76 2.99 ) ( 2.09 3.09 ) ;
-      RECT ( 1.76 2.82 ) ( 1.84 2.99 ) ;
-      RECT ( 2.01 2.82 ) ( 2.09 2.99 ) ;
-      RECT ( 7.52 2.99 ) ( 7.85 3.09 ) ;
-      RECT ( 1.76 2.74 ) ( 2.09 2.82 ) ;
-      RECT ( 7.52 2.82 ) ( 7.6 2.99 ) ;
-      RECT ( 7.77 2.82 ) ( 7.85 2.99 ) ;
-      RECT ( 7.52 2.74 ) ( 7.85 2.82 ) ;
-      RECT ( 0.56 2.43 ) ( 0.89 2.51 ) ;
-      RECT ( 0.56 2.26 ) ( 0.64 2.43 ) ;
-      RECT ( 0.81 2.26 ) ( 0.89 2.43 ) ;
-      RECT ( 4.64 2.43 ) ( 4.97 2.51 ) ;
-      RECT ( 4.64 2.26 ) ( 4.72 2.43 ) ;
-      RECT ( 4.89 2.26 ) ( 4.97 2.43 ) ;
-      RECT ( 0.56 2.18 ) ( 0.89 2.26 ) ;
-      RECT ( 4.66 2.18 ) ( 4.97 2.26 ) ;
-      RECT ( 1.28 2.01 ) ( 1.61 2.09 ) ;
-      RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
-      RECT ( 1.28 1.76 ) ( 1.61 1.84 ) ;
-      RECT ( 2.72 2.01 ) ( 3.05 2.09 ) ;
-      RECT ( 2.72 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.05 2.01 ) ;
-      RECT ( 2.72 1.76 ) ( 3.05 1.84 ) ;
-      RECT ( 4.16 2.01 ) ( 4.49 2.09 ) ;
-      RECT ( 4.16 1.84 ) ( 4.24 2.01 ) ;
-      RECT ( 4.41 1.84 ) ( 4.49 2.01 ) ;
-      RECT ( 4.16 1.76 ) ( 4.49 1.84 ) ;
-      RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
-      RECT ( 1.28 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
-      RECT ( 1.28 0.83 ) ( 1.61 0.91 ) ;
-      RECT ( 2.72 1.08 ) ( 3.05 1.16 ) ;
-      RECT ( 2.72 0.91 ) ( 2.8 1.08 ) ;
-      RECT ( 2.97 0.91 ) ( 3.05 1.08 ) ;
-      RECT ( 2.72 0.83 ) ( 3.05 0.91 ) ;
-      RECT ( 4.16 1.08 ) ( 4.49 1.16 ) ;
-      RECT ( 4.16 0.91 ) ( 4.24 1.08 ) ;
-      RECT ( 4.41 0.92 ) ( 4.49 1.08 ) ;
-      RECT ( 4.41 0.91 ) ( 4.47 0.92 ) ;
-      RECT ( 4.16 0.83 ) ( 4.47 0.91 ) ;
-      RECT ( 4.72 0.75 ) ( 4.89 2.18 ) ;
-      RECT ( 5.68 2.09 ) ( 5.85 2.26 ) ;
-      RECT ( 7.12 2.09 ) ( 7.29 2.66 ) ;
-      RECT ( 8.96 2.43 ) ( 9.29 2.51 ) ;
-      RECT ( 8.96 2.26 ) ( 9.04 2.43 ) ;
-      RECT ( 9.21 2.26 ) ( 9.29 2.43 ) ;
-      RECT ( 8.98 2.18 ) ( 9.29 2.26 ) ;
-      RECT ( 5.6 2.01 ) ( 5.93 2.09 ) ;
-      RECT ( 5.6 1.84 ) ( 5.68 2.01 ) ;
-      RECT ( 5.85 1.84 ) ( 5.93 2.01 ) ;
-      RECT ( 5.6 1.76 ) ( 5.93 1.84 ) ;
-      RECT ( 7.04 2.01 ) ( 7.37 2.09 ) ;
-      RECT ( 7.04 1.84 ) ( 7.12 2.01 ) ;
-      RECT ( 7.29 1.84 ) ( 7.37 2.01 ) ;
-      RECT ( 7.04 1.76 ) ( 7.37 1.84 ) ;
-      RECT ( 8.48 2.01 ) ( 8.81 2.09 ) ;
-      RECT ( 8.48 1.84 ) ( 8.56 2.01 ) ;
-      RECT ( 8.73 1.84 ) ( 8.81 2.01 ) ;
-      RECT ( 8.48 1.76 ) ( 8.81 1.84 ) ;
-      RECT ( 7.12 1.16 ) ( 7.29 1.76 ) ;
-      RECT ( 5.6 1.08 ) ( 5.93 1.16 ) ;
-      RECT ( 5.6 0.91 ) ( 5.68 1.08 ) ;
-      RECT ( 5.85 0.91 ) ( 5.93 1.08 ) ;
-      RECT ( 5.6 0.83 ) ( 5.93 0.91 ) ;
-      RECT ( 7.04 1.08 ) ( 7.37 1.16 ) ;
-      RECT ( 7.04 0.91 ) ( 7.12 1.08 ) ;
-      RECT ( 7.29 0.91 ) ( 7.37 1.08 ) ;
-      RECT ( 7.04 0.83 ) ( 7.37 0.91 ) ;
-      RECT ( 8.48 1.08 ) ( 8.81 1.16 ) ;
-      RECT ( 8.48 0.91 ) ( 8.56 1.08 ) ;
-      RECT ( 8.73 0.91 ) ( 8.81 1.08 ) ;
-      RECT ( 8.48 0.83 ) ( 8.81 0.91 ) ;
-      RECT ( 0.56 0.67 ) ( 0.89 0.75 ) ;
-      RECT ( 0.56 0.5 ) ( 0.64 0.67 ) ;
-      RECT ( 0.81 0.5 ) ( 0.89 0.67 ) ;
-      RECT ( 4.64 0.67 ) ( 4.97 0.75 ) ;
-      RECT ( 0.56 0.42 ) ( 0.89 0.5 ) ;
-      RECT ( 1.76 0.51 ) ( 2.09 0.59 ) ;
-      RECT ( 1.76 0.34 ) ( 1.84 0.51 ) ;
-      RECT ( 2.01 0.34 ) ( 2.09 0.51 ) ;
-      RECT ( 4.64 0.5 ) ( 4.72 0.67 ) ;
-      RECT ( 4.89 0.5 ) ( 4.97 0.67 ) ;
-      RECT ( 8.98 0.67 ) ( 9.29 0.75 ) ;
-      RECT ( 8.98 0.66 ) ( 9.04 0.67 ) ;
-      RECT ( 4.64 0.42 ) ( 4.97 0.5 ) ;
-      RECT ( 7.52 0.51 ) ( 7.85 0.59 ) ;
-      RECT ( 1.76 0.24 ) ( 2.09 0.34 ) ;
-      RECT ( 7.52 0.34 ) ( 7.6 0.51 ) ;
-      RECT ( 7.77 0.34 ) ( 7.85 0.51 ) ;
-      RECT ( 8.96 0.5 ) ( 9.04 0.66 ) ;
-      RECT ( 9.21 0.5 ) ( 9.29 0.67 ) ;
-      RECT ( 8.96 0.42 ) ( 9.29 0.5 ) ;
-      RECT ( 7.52 0.24 ) ( 7.85 0.34 ) ;
-      RECT ( 0 0.09 ) ( 10.08 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
-      RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
-      RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
-      RECT ( 5.61 -0.09 ) ( 5.92 0.09 ) ;
-      RECT ( 6.09 -0.09 ) ( 6.4 0.09 ) ;
-      RECT ( 6.57 -0.09 ) ( 6.88 0.09 ) ;
-      RECT ( 7.05 -0.09 ) ( 7.36 0.09 ) ;
-      RECT ( 7.53 -0.09 ) ( 7.84 0.09 ) ;
-      RECT ( 8.01 -0.09 ) ( 8.32 0.09 ) ;
-      RECT ( 8.49 -0.09 ) ( 8.8 0.09 ) ;
-      RECT ( 8.97 -0.09 ) ( 9.28 0.09 ) ;
-      RECT ( 9.45 -0.09 ) ( 9.76 0.09 ) ;
-      RECT ( 9.93 -0.09 ) ( 10.08 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 10.08 -0.09 ) ;
+      RECT ( 0 3.415 ) ( 10.08 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.475 3.415 ) ;
+      RECT ( 4.645 3.245 ) ( 4.955 3.415 ) ;
+      RECT ( 5.125 3.245 ) ( 5.435 3.415 ) ;
+      RECT ( 5.605 3.245 ) ( 5.915 3.415 ) ;
+      RECT ( 6.085 3.245 ) ( 6.395 3.415 ) ;
+      RECT ( 6.565 3.245 ) ( 6.875 3.415 ) ;
+      RECT ( 7.045 3.245 ) ( 7.355 3.415 ) ;
+      RECT ( 7.525 3.245 ) ( 7.835 3.415 ) ;
+      RECT ( 8.005 3.245 ) ( 8.315 3.415 ) ;
+      RECT ( 8.485 3.245 ) ( 8.795 3.415 ) ;
+      RECT ( 8.965 3.245 ) ( 9.275 3.415 ) ;
+      RECT ( 9.445 3.245 ) ( 9.755 3.415 ) ;
+      RECT ( 9.925 3.245 ) ( 10.08 3.415 ) ;
+      RECT ( 0 3.09 ) ( 10.08 3.245 ) ;
+      RECT ( 1.755 2.99 ) ( 2.085 3.09 ) ;
+      RECT ( 1.755 2.82 ) ( 1.835 2.99 ) ;
+      RECT ( 2.005 2.82 ) ( 2.085 2.99 ) ;
+      RECT ( 7.515 2.99 ) ( 7.845 3.09 ) ;
+      RECT ( 1.755 2.74 ) ( 2.085 2.82 ) ;
+      RECT ( 7.515 2.82 ) ( 7.595 2.99 ) ;
+      RECT ( 7.765 2.82 ) ( 7.845 2.99 ) ;
+      RECT ( 7.515 2.74 ) ( 7.845 2.82 ) ;
+      RECT ( 0.555 2.425 ) ( 0.885 2.505 ) ;
+      RECT ( 0.555 2.255 ) ( 0.635 2.425 ) ;
+      RECT ( 0.805 2.255 ) ( 0.885 2.425 ) ;
+      RECT ( 4.635 2.425 ) ( 4.965 2.505 ) ;
+      RECT ( 4.635 2.26 ) ( 4.715 2.425 ) ;
+      RECT ( 0.555 2.175 ) ( 0.885 2.255 ) ;
+      RECT ( 4.655 2.255 ) ( 4.715 2.26 ) ;
+      RECT ( 4.885 2.255 ) ( 4.965 2.425 ) ;
+      RECT ( 4.655 2.175 ) ( 4.965 2.255 ) ;
+      RECT ( 1.275 2.01 ) ( 1.605 2.09 ) ;
+      RECT ( 1.275 1.84 ) ( 1.355 2.01 ) ;
+      RECT ( 1.525 1.84 ) ( 1.605 2.01 ) ;
+      RECT ( 1.275 1.76 ) ( 1.605 1.84 ) ;
+      RECT ( 2.715 2.01 ) ( 3.045 2.09 ) ;
+      RECT ( 2.715 1.84 ) ( 2.795 2.01 ) ;
+      RECT ( 2.965 1.84 ) ( 3.045 2.01 ) ;
+      RECT ( 2.715 1.76 ) ( 3.045 1.84 ) ;
+      RECT ( 4.155 2.01 ) ( 4.485 2.09 ) ;
+      RECT ( 4.155 1.84 ) ( 4.235 2.01 ) ;
+      RECT ( 4.405 1.84 ) ( 4.485 2.01 ) ;
+      RECT ( 4.155 1.76 ) ( 4.485 1.84 ) ;
+      RECT ( 1.275 1.075 ) ( 1.605 1.155 ) ;
+      RECT ( 1.275 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.905 ) ( 1.605 1.075 ) ;
+      RECT ( 1.275 0.825 ) ( 1.605 0.905 ) ;
+      RECT ( 2.715 1.075 ) ( 3.045 1.155 ) ;
+      RECT ( 2.715 0.905 ) ( 2.795 1.075 ) ;
+      RECT ( 2.965 0.905 ) ( 3.045 1.075 ) ;
+      RECT ( 2.715 0.825 ) ( 3.045 0.905 ) ;
+      RECT ( 4.155 1.075 ) ( 4.485 1.155 ) ;
+      RECT ( 4.155 0.905 ) ( 4.235 1.075 ) ;
+      RECT ( 4.405 0.92 ) ( 4.485 1.075 ) ;
+      RECT ( 4.405 0.905 ) ( 4.465 0.92 ) ;
+      RECT ( 4.155 0.825 ) ( 4.465 0.905 ) ;
+      RECT ( 4.715 0.75 ) ( 4.885 2.175 ) ;
+      RECT ( 7.115 2.09 ) ( 7.285 2.66 ) ;
+      RECT ( 8.955 2.425 ) ( 9.285 2.505 ) ;
+      RECT ( 8.955 2.26 ) ( 9.035 2.425 ) ;
+      RECT ( 8.975 2.255 ) ( 9.035 2.26 ) ;
+      RECT ( 9.205 2.255 ) ( 9.285 2.425 ) ;
+      RECT ( 8.975 2.175 ) ( 9.285 2.255 ) ;
+      RECT ( 5.595 2.01 ) ( 5.925 2.09 ) ;
+      RECT ( 5.595 1.84 ) ( 5.675 2.01 ) ;
+      RECT ( 5.845 1.84 ) ( 5.925 2.01 ) ;
+      RECT ( 5.595 1.76 ) ( 5.925 1.84 ) ;
+      RECT ( 7.035 2.01 ) ( 7.365 2.09 ) ;
+      RECT ( 7.035 1.84 ) ( 7.115 2.01 ) ;
+      RECT ( 7.285 1.84 ) ( 7.365 2.01 ) ;
+      RECT ( 7.035 1.76 ) ( 7.365 1.84 ) ;
+      RECT ( 8.475 2.01 ) ( 8.805 2.09 ) ;
+      RECT ( 8.475 1.84 ) ( 8.555 2.01 ) ;
+      RECT ( 8.725 1.84 ) ( 8.805 2.01 ) ;
+      RECT ( 8.475 1.76 ) ( 8.805 1.84 ) ;
+      RECT ( 7.115 1.155 ) ( 7.285 1.76 ) ;
+      RECT ( 5.595 1.075 ) ( 5.925 1.155 ) ;
+      RECT ( 5.595 0.905 ) ( 5.675 1.075 ) ;
+      RECT ( 5.845 0.905 ) ( 5.925 1.075 ) ;
+      RECT ( 5.595 0.825 ) ( 5.925 0.905 ) ;
+      RECT ( 7.035 1.075 ) ( 7.365 1.155 ) ;
+      RECT ( 7.035 0.905 ) ( 7.115 1.075 ) ;
+      RECT ( 7.285 0.905 ) ( 7.365 1.075 ) ;
+      RECT ( 7.035 0.825 ) ( 7.365 0.905 ) ;
+      RECT ( 8.475 1.075 ) ( 8.805 1.155 ) ;
+      RECT ( 8.475 0.905 ) ( 8.555 1.075 ) ;
+      RECT ( 8.725 0.905 ) ( 8.805 1.075 ) ;
+      RECT ( 8.475 0.825 ) ( 8.805 0.905 ) ;
+      RECT ( 0.555 0.67 ) ( 0.885 0.75 ) ;
+      RECT ( 0.555 0.5 ) ( 0.635 0.67 ) ;
+      RECT ( 0.805 0.5 ) ( 0.885 0.67 ) ;
+      RECT ( 4.635 0.67 ) ( 4.965 0.75 ) ;
+      RECT ( 0.555 0.42 ) ( 0.885 0.5 ) ;
+      RECT ( 1.755 0.51 ) ( 2.085 0.59 ) ;
+      RECT ( 1.755 0.34 ) ( 1.835 0.51 ) ;
+      RECT ( 2.005 0.34 ) ( 2.085 0.51 ) ;
+      RECT ( 4.635 0.5 ) ( 4.715 0.67 ) ;
+      RECT ( 4.885 0.5 ) ( 4.965 0.67 ) ;
+      RECT ( 8.975 0.67 ) ( 9.285 0.75 ) ;
+      RECT ( 8.975 0.655 ) ( 9.035 0.67 ) ;
+      RECT ( 4.635 0.42 ) ( 4.965 0.5 ) ;
+      RECT ( 7.515 0.51 ) ( 7.845 0.59 ) ;
+      RECT ( 1.755 0.24 ) ( 2.085 0.34 ) ;
+      RECT ( 7.515 0.34 ) ( 7.595 0.51 ) ;
+      RECT ( 7.765 0.34 ) ( 7.845 0.51 ) ;
+      RECT ( 8.955 0.5 ) ( 9.035 0.655 ) ;
+      RECT ( 9.205 0.5 ) ( 9.285 0.67 ) ;
+      RECT ( 8.955 0.42 ) ( 9.285 0.5 ) ;
+      RECT ( 7.515 0.24 ) ( 7.845 0.34 ) ;
+      RECT ( 0 0.085 ) ( 10.08 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.475 0.085 ) ;
+      RECT ( 4.645 -0.085 ) ( 4.955 0.085 ) ;
+      RECT ( 5.125 -0.085 ) ( 5.435 0.085 ) ;
+      RECT ( 5.605 -0.085 ) ( 5.915 0.085 ) ;
+      RECT ( 6.085 -0.085 ) ( 6.395 0.085 ) ;
+      RECT ( 6.565 -0.085 ) ( 6.875 0.085 ) ;
+      RECT ( 7.045 -0.085 ) ( 7.355 0.085 ) ;
+      RECT ( 7.525 -0.085 ) ( 7.835 0.085 ) ;
+      RECT ( 8.005 -0.085 ) ( 8.315 0.085 ) ;
+      RECT ( 8.485 -0.085 ) ( 8.795 0.085 ) ;
+      RECT ( 8.965 -0.085 ) ( 9.275 0.085 ) ;
+      RECT ( 9.445 -0.085 ) ( 9.755 0.085 ) ;
+      RECT ( 9.925 -0.085 ) ( 10.08 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 10.08 -0.085 ) ;
     LAYER metal1 ;
-      RECT ( 0 3.42 ) ( 10.08 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
-      RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
-      RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
-      RECT ( 5.61 3.25 ) ( 5.92 3.42 ) ;
-      RECT ( 6.09 3.25 ) ( 6.4 3.42 ) ;
-      RECT ( 6.57 3.25 ) ( 6.88 3.42 ) ;
-      RECT ( 7.05 3.25 ) ( 7.36 3.42 ) ;
-      RECT ( 7.53 3.25 ) ( 7.84 3.42 ) ;
-      RECT ( 8.01 3.25 ) ( 8.32 3.42 ) ;
-      RECT ( 8.49 3.25 ) ( 8.8 3.42 ) ;
-      RECT ( 8.97 3.25 ) ( 9.28 3.42 ) ;
-      RECT ( 9.45 3.25 ) ( 9.76 3.42 ) ;
-      RECT ( 9.93 3.25 ) ( 10.08 3.42 ) ;
-      RECT ( 0 3.09 ) ( 10.08 3.25 ) ;
-      RECT ( 7.54 2.99 ) ( 7.83 3.09 ) ;
-      RECT ( 7.06 2.83 ) ( 7.35 2.89 ) ;
-      RECT ( 7.06 2.82 ) ( 7.12 2.83 ) ;
-      RECT ( 0.65 2.68 ) ( 7.12 2.82 ) ;
-      RECT ( 0.65 2.49 ) ( 0.79 2.68 ) ;
-      RECT ( 7.06 2.66 ) ( 7.12 2.68 ) ;
-      RECT ( 7.29 2.66 ) ( 7.35 2.83 ) ;
-      RECT ( 7.54 2.82 ) ( 7.6 2.99 ) ;
-      RECT ( 7.77 2.82 ) ( 7.83 2.99 ) ;
-      RECT ( 7.54 2.76 ) ( 7.83 2.82 ) ;
-      RECT ( 7.06 2.6 ) ( 7.35 2.66 ) ;
-      RECT ( 0.58 2.43 ) ( 0.87 2.49 ) ;
-      RECT ( 0.58 2.26 ) ( 0.64 2.43 ) ;
-      RECT ( 0.81 2.26 ) ( 0.87 2.43 ) ;
-      RECT ( 5.62 2.43 ) ( 5.91 2.49 ) ;
-      RECT ( 5.62 2.41 ) ( 5.68 2.43 ) ;
-      RECT ( 0.58 2.2 ) ( 0.87 2.26 ) ;
-      RECT ( 3.77 2.27 ) ( 5.68 2.41 ) ;
-      RECT ( 0.65 0.73 ) ( 0.79 2.2 ) ;
-      RECT ( 1.3 2.01 ) ( 1.59 2.07 ) ;
-      RECT ( 1.3 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 2 ) ( 1.59 2.01 ) ;
-      RECT ( 2.74 2.01 ) ( 3.03 2.07 ) ;
-      RECT ( 2.74 2 ) ( 2.8 2.01 ) ;
-      RECT ( 1.53 1.86 ) ( 2.8 2 ) ;
-      RECT ( 1.53 1.84 ) ( 1.59 1.86 ) ;
-      RECT ( 1.3 1.78 ) ( 1.59 1.84 ) ;
-      RECT ( 2.74 1.84 ) ( 2.8 1.86 ) ;
-      RECT ( 2.97 1.84 ) ( 3.03 2.01 ) ;
-      RECT ( 2.74 1.78 ) ( 3.03 1.84 ) ;
-      RECT ( 1.37 1.14 ) ( 1.51 1.78 ) ;
-      RECT ( 2.81 1.14 ) ( 2.95 1.78 ) ;
-      RECT ( 1.3 1.08 ) ( 1.59 1.14 ) ;
-      RECT ( 1.3 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 1.59 1.08 ) ;
-      RECT ( 1.3 0.85 ) ( 1.59 0.91 ) ;
-      RECT ( 2.74 1.08 ) ( 3.03 1.14 ) ;
-      RECT ( 2.74 0.91 ) ( 2.8 1.08 ) ;
-      RECT ( 2.97 0.91 ) ( 3.03 1.08 ) ;
+      RECT ( 0 3.415 ) ( 10.08 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.475 3.415 ) ;
+      RECT ( 4.645 3.245 ) ( 4.955 3.415 ) ;
+      RECT ( 5.125 3.245 ) ( 5.435 3.415 ) ;
+      RECT ( 5.605 3.245 ) ( 5.915 3.415 ) ;
+      RECT ( 6.085 3.245 ) ( 6.395 3.415 ) ;
+      RECT ( 6.565 3.245 ) ( 6.875 3.415 ) ;
+      RECT ( 7.045 3.245 ) ( 7.355 3.415 ) ;
+      RECT ( 7.525 3.245 ) ( 7.835 3.415 ) ;
+      RECT ( 8.005 3.245 ) ( 8.315 3.415 ) ;
+      RECT ( 8.485 3.245 ) ( 8.795 3.415 ) ;
+      RECT ( 8.965 3.245 ) ( 9.275 3.415 ) ;
+      RECT ( 9.445 3.245 ) ( 9.755 3.415 ) ;
+      RECT ( 9.925 3.245 ) ( 10.08 3.415 ) ;
+      RECT ( 0 3.09 ) ( 10.08 3.245 ) ;
+      RECT ( 7.535 2.99 ) ( 7.825 3.09 ) ;
+      RECT ( 7.055 2.83 ) ( 7.345 2.89 ) ;
+      RECT ( 7.055 2.815 ) ( 7.115 2.83 ) ;
+      RECT ( 0.65 2.675 ) ( 7.115 2.815 ) ;
+      RECT ( 0.65 2.485 ) ( 0.79 2.675 ) ;
+      RECT ( 7.055 2.66 ) ( 7.115 2.675 ) ;
+      RECT ( 7.285 2.66 ) ( 7.345 2.83 ) ;
+      RECT ( 7.535 2.82 ) ( 7.595 2.99 ) ;
+      RECT ( 7.765 2.82 ) ( 7.825 2.99 ) ;
+      RECT ( 7.535 2.76 ) ( 7.825 2.82 ) ;
+      RECT ( 7.055 2.6 ) ( 7.345 2.66 ) ;
+      RECT ( 0.575 2.425 ) ( 0.865 2.485 ) ;
+      RECT ( 0.575 2.255 ) ( 0.635 2.425 ) ;
+      RECT ( 0.805 2.255 ) ( 0.865 2.425 ) ;
+      RECT ( 8.975 2.425 ) ( 9.265 2.485 ) ;
+      RECT ( 8.975 2.41 ) ( 9.035 2.425 ) ;
+      RECT ( 0.575 2.195 ) ( 0.865 2.255 ) ;
+      RECT ( 3.77 2.27 ) ( 9.035 2.41 ) ;
+      RECT ( 0.65 0.73 ) ( 0.79 2.195 ) ;
+      RECT ( 1.295 2.01 ) ( 1.585 2.07 ) ;
+      RECT ( 1.295 1.84 ) ( 1.355 2.01 ) ;
+      RECT ( 1.525 1.84 ) ( 1.585 2.01 ) ;
+      RECT ( 1.295 1.78 ) ( 1.585 1.84 ) ;
+      RECT ( 2.735 2.01 ) ( 3.025 2.07 ) ;
+      RECT ( 2.735 1.84 ) ( 2.795 2.01 ) ;
+      RECT ( 2.965 1.84 ) ( 3.025 2.01 ) ;
+      RECT ( 2.735 1.78 ) ( 3.025 1.84 ) ;
+      RECT ( 1.37 1.135 ) ( 1.51 1.78 ) ;
+      RECT ( 2.81 1.135 ) ( 2.95 1.78 ) ;
+      RECT ( 1.295 1.075 ) ( 1.585 1.135 ) ;
+      RECT ( 1.295 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 1.06 ) ( 1.585 1.075 ) ;
+      RECT ( 2.735 1.075 ) ( 3.025 1.135 ) ;
+      RECT ( 2.735 1.06 ) ( 2.795 1.075 ) ;
+      RECT ( 1.525 0.92 ) ( 2.795 1.06 ) ;
+      RECT ( 1.525 0.905 ) ( 1.585 0.92 ) ;
+      RECT ( 1.295 0.845 ) ( 1.585 0.905 ) ;
+      RECT ( 2.735 0.905 ) ( 2.795 0.92 ) ;
+      RECT ( 2.965 0.905 ) ( 3.025 1.075 ) ;
       RECT ( 3.77 1.06 ) ( 3.91 2.27 ) ;
-      RECT ( 5.62 2.26 ) ( 5.68 2.27 ) ;
-      RECT ( 5.85 2.41 ) ( 5.91 2.43 ) ;
-      RECT ( 8.98 2.43 ) ( 9.27 2.49 ) ;
-      RECT ( 8.98 2.41 ) ( 9.04 2.43 ) ;
-      RECT ( 5.85 2.27 ) ( 9.04 2.41 ) ;
-      RECT ( 5.85 2.26 ) ( 5.91 2.27 ) ;
-      RECT ( 5.62 2.2 ) ( 5.91 2.26 ) ;
-      RECT ( 8.98 2.26 ) ( 9.04 2.27 ) ;
-      RECT ( 9.21 2.26 ) ( 9.27 2.43 ) ;
-      RECT ( 8.98 2.2 ) ( 9.27 2.26 ) ;
-      RECT ( 4.18 2.01 ) ( 4.47 2.07 ) ;
-      RECT ( 4.18 1.84 ) ( 4.24 2.01 ) ;
-      RECT ( 4.41 2 ) ( 4.47 2.01 ) ;
-      RECT ( 8.5 2.01 ) ( 8.79 2.07 ) ;
-      RECT ( 8.5 2 ) ( 8.56 2.01 ) ;
-      RECT ( 4.41 1.86 ) ( 8.56 2 ) ;
-      RECT ( 4.41 1.84 ) ( 4.47 1.86 ) ;
-      RECT ( 4.18 1.78 ) ( 4.47 1.84 ) ;
-      RECT ( 5.69 1.14 ) ( 5.83 1.86 ) ;
-      RECT ( 8.5 1.84 ) ( 8.56 1.86 ) ;
-      RECT ( 8.73 1.84 ) ( 8.79 2.01 ) ;
-      RECT ( 8.5 1.78 ) ( 8.79 1.84 ) ;
-      RECT ( 8.57 1.14 ) ( 8.71 1.78 ) ;
-      RECT ( 4.18 1.08 ) ( 4.47 1.14 ) ;
-      RECT ( 4.18 1.06 ) ( 4.24 1.08 ) ;
-      RECT ( 3.77 0.92 ) ( 4.24 1.06 ) ;
-      RECT ( 2.74 0.85 ) ( 3.03 0.91 ) ;
-      RECT ( 4.18 0.91 ) ( 4.24 0.92 ) ;
-      RECT ( 4.41 0.91 ) ( 4.47 1.08 ) ;
-      RECT ( 4.18 0.85 ) ( 4.47 0.91 ) ;
-      RECT ( 5.62 1.08 ) ( 5.91 1.14 ) ;
-      RECT ( 5.62 0.91 ) ( 5.68 1.08 ) ;
-      RECT ( 5.85 0.91 ) ( 5.91 1.08 ) ;
-      RECT ( 5.62 0.85 ) ( 5.91 0.91 ) ;
-      RECT ( 8.5 1.08 ) ( 8.79 1.14 ) ;
-      RECT ( 8.5 0.91 ) ( 8.56 1.08 ) ;
-      RECT ( 8.73 0.91 ) ( 8.79 1.08 ) ;
-      RECT ( 8.5 0.85 ) ( 8.79 0.91 ) ;
-      RECT ( 9.05 0.73 ) ( 9.19 2.2 ) ;
-      RECT ( 0.58 0.67 ) ( 0.87 0.73 ) ;
-      RECT ( 0.58 0.5 ) ( 0.64 0.67 ) ;
-      RECT ( 0.81 0.5 ) ( 0.87 0.67 ) ;
-      RECT ( 4.66 0.67 ) ( 4.95 0.73 ) ;
-      RECT ( 0.58 0.44 ) ( 0.87 0.5 ) ;
-      RECT ( 1.78 0.51 ) ( 2.07 0.57 ) ;
-      RECT ( 1.78 0.34 ) ( 1.84 0.51 ) ;
-      RECT ( 2.01 0.34 ) ( 2.07 0.51 ) ;
-      RECT ( 4.66 0.5 ) ( 4.72 0.67 ) ;
-      RECT ( 4.89 0.5 ) ( 4.95 0.67 ) ;
-      RECT ( 8.98 0.67 ) ( 9.27 0.73 ) ;
-      RECT ( 4.66 0.44 ) ( 4.95 0.5 ) ;
-      RECT ( 7.54 0.51 ) ( 7.83 0.57 ) ;
-      RECT ( 1.78 0.24 ) ( 2.07 0.34 ) ;
-      RECT ( 7.54 0.34 ) ( 7.6 0.51 ) ;
-      RECT ( 7.77 0.34 ) ( 7.83 0.51 ) ;
-      RECT ( 8.98 0.5 ) ( 9.04 0.67 ) ;
-      RECT ( 9.21 0.5 ) ( 9.27 0.67 ) ;
-      RECT ( 8.98 0.44 ) ( 9.27 0.5 ) ;
-      RECT ( 7.54 0.24 ) ( 7.83 0.34 ) ;
-      RECT ( 0 0.09 ) ( 10.08 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
-      RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
-      RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
-      RECT ( 5.61 -0.09 ) ( 5.92 0.09 ) ;
-      RECT ( 6.09 -0.09 ) ( 6.4 0.09 ) ;
-      RECT ( 6.57 -0.09 ) ( 6.88 0.09 ) ;
-      RECT ( 7.05 -0.09 ) ( 7.36 0.09 ) ;
-      RECT ( 7.53 -0.09 ) ( 7.84 0.09 ) ;
-      RECT ( 8.01 -0.09 ) ( 8.32 0.09 ) ;
-      RECT ( 8.49 -0.09 ) ( 8.8 0.09 ) ;
-      RECT ( 8.97 -0.09 ) ( 9.28 0.09 ) ;
-      RECT ( 9.45 -0.09 ) ( 9.76 0.09 ) ;
-      RECT ( 9.93 -0.09 ) ( 10.08 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 10.08 -0.09 ) ;
+      RECT ( 5.69 2.07 ) ( 5.83 2.27 ) ;
+      RECT ( 8.975 2.255 ) ( 9.035 2.27 ) ;
+      RECT ( 9.205 2.255 ) ( 9.265 2.425 ) ;
+      RECT ( 8.975 2.195 ) ( 9.265 2.255 ) ;
+      RECT ( 4.175 2.01 ) ( 4.465 2.07 ) ;
+      RECT ( 4.175 1.84 ) ( 4.235 2.01 ) ;
+      RECT ( 4.405 1.995 ) ( 4.465 2.01 ) ;
+      RECT ( 5.615 2.01 ) ( 5.905 2.07 ) ;
+      RECT ( 4.405 1.855 ) ( 5.35 1.995 ) ;
+      RECT ( 4.405 1.84 ) ( 4.465 1.855 ) ;
+      RECT ( 4.175 1.78 ) ( 4.465 1.84 ) ;
+      RECT ( 4.175 1.075 ) ( 4.465 1.135 ) ;
+      RECT ( 4.175 1.06 ) ( 4.235 1.075 ) ;
+      RECT ( 3.77 0.92 ) ( 4.235 1.06 ) ;
+      RECT ( 2.735 0.845 ) ( 3.025 0.905 ) ;
+      RECT ( 4.175 0.905 ) ( 4.235 0.92 ) ;
+      RECT ( 4.405 0.905 ) ( 4.465 1.075 ) ;
+      RECT ( 5.21 1.06 ) ( 5.35 1.855 ) ;
+      RECT ( 5.615 1.84 ) ( 5.675 2.01 ) ;
+      RECT ( 5.845 1.84 ) ( 5.905 2.01 ) ;
+      RECT ( 5.615 1.78 ) ( 5.905 1.84 ) ;
+      RECT ( 8.495 2.01 ) ( 8.785 2.07 ) ;
+      RECT ( 8.495 1.84 ) ( 8.555 2.01 ) ;
+      RECT ( 8.725 1.84 ) ( 8.785 2.01 ) ;
+      RECT ( 8.495 1.78 ) ( 8.785 1.84 ) ;
+      RECT ( 8.57 1.135 ) ( 8.71 1.78 ) ;
+      RECT ( 5.615 1.075 ) ( 5.905 1.135 ) ;
+      RECT ( 5.615 1.06 ) ( 5.675 1.075 ) ;
+      RECT ( 5.21 0.92 ) ( 5.675 1.06 ) ;
+      RECT ( 4.175 0.845 ) ( 4.465 0.905 ) ;
+      RECT ( 5.615 0.905 ) ( 5.675 0.92 ) ;
+      RECT ( 5.845 1.06 ) ( 5.905 1.075 ) ;
+      RECT ( 8.495 1.075 ) ( 8.785 1.135 ) ;
+      RECT ( 8.495 1.06 ) ( 8.555 1.075 ) ;
+      RECT ( 5.845 0.92 ) ( 8.555 1.06 ) ;
+      RECT ( 5.845 0.905 ) ( 5.905 0.92 ) ;
+      RECT ( 5.615 0.845 ) ( 5.905 0.905 ) ;
+      RECT ( 8.495 0.905 ) ( 8.555 0.92 ) ;
+      RECT ( 8.725 0.905 ) ( 8.785 1.075 ) ;
+      RECT ( 8.495 0.845 ) ( 8.785 0.905 ) ;
+      RECT ( 9.05 0.73 ) ( 9.19 2.195 ) ;
+      RECT ( 0.575 0.67 ) ( 0.865 0.73 ) ;
+      RECT ( 0.575 0.5 ) ( 0.635 0.67 ) ;
+      RECT ( 0.805 0.5 ) ( 0.865 0.67 ) ;
+      RECT ( 4.655 0.67 ) ( 4.945 0.73 ) ;
+      RECT ( 0.575 0.44 ) ( 0.865 0.5 ) ;
+      RECT ( 1.775 0.51 ) ( 2.065 0.57 ) ;
+      RECT ( 1.775 0.34 ) ( 1.835 0.51 ) ;
+      RECT ( 2.005 0.34 ) ( 2.065 0.51 ) ;
+      RECT ( 4.655 0.5 ) ( 4.715 0.67 ) ;
+      RECT ( 4.885 0.5 ) ( 4.945 0.67 ) ;
+      RECT ( 8.975 0.67 ) ( 9.265 0.73 ) ;
+      RECT ( 4.655 0.44 ) ( 4.945 0.5 ) ;
+      RECT ( 7.535 0.51 ) ( 7.825 0.57 ) ;
+      RECT ( 1.775 0.24 ) ( 2.065 0.34 ) ;
+      RECT ( 7.535 0.34 ) ( 7.595 0.51 ) ;
+      RECT ( 7.765 0.34 ) ( 7.825 0.51 ) ;
+      RECT ( 8.975 0.5 ) ( 9.035 0.67 ) ;
+      RECT ( 9.205 0.5 ) ( 9.265 0.67 ) ;
+      RECT ( 8.975 0.44 ) ( 9.265 0.5 ) ;
+      RECT ( 7.535 0.24 ) ( 7.825 0.34 ) ;
+      RECT ( 0 0.085 ) ( 10.08 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.475 0.085 ) ;
+      RECT ( 4.645 -0.085 ) ( 4.955 0.085 ) ;
+      RECT ( 5.125 -0.085 ) ( 5.435 0.085 ) ;
+      RECT ( 5.605 -0.085 ) ( 5.915 0.085 ) ;
+      RECT ( 6.085 -0.085 ) ( 6.395 0.085 ) ;
+      RECT ( 6.565 -0.085 ) ( 6.875 0.085 ) ;
+      RECT ( 7.045 -0.085 ) ( 7.355 0.085 ) ;
+      RECT ( 7.525 -0.085 ) ( 7.835 0.085 ) ;
+      RECT ( 8.005 -0.085 ) ( 8.315 0.085 ) ;
+      RECT ( 8.485 -0.085 ) ( 8.795 0.085 ) ;
+      RECT ( 8.965 -0.085 ) ( 9.275 0.085 ) ;
+      RECT ( 9.445 -0.085 ) ( 9.755 0.085 ) ;
+      RECT ( 9.925 -0.085 ) ( 10.08 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 10.08 -0.085 ) ;
 
   end
 END XNOR2X1
diff --git a/cells/lef/XNOR2X1.lef.temp b/cells/lef/XNOR2X1.lef.temp
index 179d901..3432c26 100644
--- a/cells/lef/XNOR2X1.lef.temp
+++ b/cells/lef/XNOR2X1.lef.temp
@@ -49,15 +49,15 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
-        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
+        RECT 1.29500000 0.84500000 1.58500000 0.92000000 ;
+        RECT 2.73500000 0.84500000 3.02500000 0.92000000 ;
+        RECT 1.29500000 0.92000000 3.02500000 1.06000000 ;
+        RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
+        RECT 2.73500000 1.06000000 3.02500000 1.13500000 ;
         RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
         RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
-        RECT 1.29500000 1.78000000 1.58500000 1.85500000 ;
-        RECT 2.73500000 1.78000000 3.02500000 1.85500000 ;
-        RECT 1.29500000 1.85500000 3.02500000 1.99500000 ;
-        RECT 1.29500000 1.99500000 1.58500000 2.07000000 ;
-        RECT 2.73500000 1.99500000 3.02500000 2.07000000 ;
+        RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
+        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
     END
   END B
 
@@ -68,15 +68,17 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 5.61500000 0.84500000 5.90500000 1.13500000 ;
-        RECT 8.49500000 0.84500000 8.78500000 1.13500000 ;
+        RECT 5.61500000 0.84500000 5.90500000 0.92000000 ;
+        RECT 8.49500000 0.84500000 8.78500000 0.92000000 ;
+        RECT 5.21000000 0.92000000 8.78500000 1.06000000 ;
+        RECT 5.61500000 1.06000000 5.90500000 1.13500000 ;
+        RECT 8.49500000 1.06000000 8.78500000 1.13500000 ;
         RECT 8.57000000 1.13500000 8.71000000 1.78000000 ;
         RECT 4.17500000 1.78000000 4.46500000 1.85500000 ;
-        RECT 5.69000000 1.13500000 5.83000000 1.85500000 ;
-        RECT 8.49500000 1.78000000 8.78500000 1.85500000 ;
-        RECT 4.17500000 1.85500000 8.78500000 1.99500000 ;
+        RECT 5.21000000 1.06000000 5.35000000 1.85500000 ;
+        RECT 4.17500000 1.85500000 5.35000000 1.99500000 ;
         RECT 4.17500000 1.99500000 4.46500000 2.07000000 ;
-        RECT 8.49500000 1.99500000 8.78500000 2.07000000 ;
+        RECT 8.49500000 1.78000000 8.78500000 2.07000000 ;
     END
   END A
 
diff --git a/cells/lef/XOR2X1.lef b/cells/lef/XOR2X1.lef
new file mode 100644
index 0000000..cf298d6
--- /dev/null
+++ b/cells/lef/XOR2X1.lef
@@ -0,0 +1,245 @@
+VERSION 5.7 ;
+  NOWIREEXTENSIONATPIN ON ;
+  DIVIDERCHAR "/" ;
+  BUSBITCHARS "[]" ;
+MACRO XOR2X1
+  CLASS CORE ;
+  FOREIGN XOR2X1 ;
+  ORIGIN 0.000 0.000 ;
+  SIZE 10.080 BY 3.330 ;
+  SYMMETRY X Y R90 ;
+  SITE unit ;
+  PIN vdd
+    DIRECTION INOUT ;
+    USE POWER ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 3.090 10.080 3.570 ;
+        RECT 1.780 2.990 2.070 3.090 ;
+        RECT 1.780 2.820 1.840 2.990 ;
+        RECT 2.010 2.820 2.070 2.990 ;
+        RECT 1.780 2.760 2.070 2.820 ;
+    END
+    PORT
+      LAYER li1 ;
+        RECT 0.000 3.090 10.080 3.570 ;
+        RECT 1.760 2.990 2.090 3.090 ;
+        RECT 1.760 2.820 1.840 2.990 ;
+        RECT 2.010 2.820 2.090 2.990 ;
+        RECT 1.760 2.740 2.090 2.820 ;
+        RECT 7.520 2.990 7.850 3.090 ;
+        RECT 7.520 2.820 7.600 2.990 ;
+        RECT 7.770 2.820 7.850 2.990 ;
+        RECT 7.520 2.740 7.850 2.820 ;
+    END
+  END vdd
+  PIN gnd
+    DIRECTION INOUT ;
+    USE GROUND ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 1.780 0.510 2.070 0.570 ;
+        RECT 1.780 0.340 1.840 0.510 ;
+        RECT 2.010 0.340 2.070 0.510 ;
+        RECT 1.780 0.240 2.070 0.340 ;
+        RECT 7.540 0.510 7.830 0.570 ;
+        RECT 7.540 0.340 7.600 0.510 ;
+        RECT 7.770 0.340 7.830 0.510 ;
+        RECT 7.540 0.240 7.830 0.340 ;
+        RECT 0.000 -0.240 10.080 0.240 ;
+    END
+    PORT
+      LAYER li1 ;
+        RECT 1.760 0.510 2.090 0.590 ;
+        RECT 1.760 0.340 1.840 0.510 ;
+        RECT 2.010 0.340 2.090 0.510 ;
+        RECT 1.760 0.240 2.090 0.340 ;
+        RECT 7.520 0.510 7.850 0.590 ;
+        RECT 7.520 0.340 7.600 0.510 ;
+        RECT 7.770 0.340 7.850 0.510 ;
+        RECT 7.520 0.240 7.850 0.340 ;
+        RECT 0.000 -0.240 10.080 0.240 ;
+    END
+  END gnd
+  PIN Y
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 4.660 0.440 4.950 0.730 ;
+    END
+  END Y
+  PIN A
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 1.300 2.000 1.590 2.070 ;
+        RECT 5.620 2.000 5.910 2.070 ;
+        RECT 1.300 1.860 5.910 2.000 ;
+        RECT 1.300 1.780 1.590 1.860 ;
+        RECT 1.370 1.140 1.510 1.780 ;
+        RECT 4.250 1.140 4.390 1.860 ;
+        RECT 5.620 1.780 5.910 1.860 ;
+        RECT 1.300 0.850 1.590 1.140 ;
+        RECT 4.180 0.850 4.470 1.140 ;
+    END
+  END A
+  PIN B
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 2.740 1.390 3.030 1.680 ;
+        RECT 2.810 1.140 2.950 1.390 ;
+        RECT 2.740 0.850 3.030 1.140 ;
+    END
+  END B
+  OBS
+      LAYER li1 ;
+        RECT 0.560 2.430 0.890 2.510 ;
+        RECT 0.560 2.260 0.640 2.430 ;
+        RECT 0.810 2.260 0.890 2.430 ;
+        RECT 0.560 2.180 0.890 2.260 ;
+        RECT 2.800 2.090 2.970 2.660 ;
+        RECT 4.640 2.430 4.970 2.510 ;
+        RECT 4.640 2.260 4.720 2.430 ;
+        RECT 4.890 2.260 4.970 2.430 ;
+        RECT 8.960 2.430 9.290 2.510 ;
+        RECT 8.960 2.260 9.040 2.430 ;
+        RECT 9.210 2.260 9.290 2.430 ;
+        RECT 4.240 2.090 4.410 2.260 ;
+        RECT 4.660 2.180 4.970 2.260 ;
+        RECT 8.980 2.180 9.290 2.260 ;
+        RECT 1.280 2.010 1.610 2.090 ;
+        RECT 1.280 1.840 1.360 2.010 ;
+        RECT 1.530 1.840 1.610 2.010 ;
+        RECT 1.280 1.760 1.610 1.840 ;
+        RECT 2.720 2.010 3.050 2.090 ;
+        RECT 2.720 1.840 2.800 2.010 ;
+        RECT 2.970 1.840 3.050 2.010 ;
+        RECT 2.720 1.760 3.050 1.840 ;
+        RECT 4.160 2.010 4.490 2.090 ;
+        RECT 4.160 1.840 4.240 2.010 ;
+        RECT 4.410 1.840 4.490 2.010 ;
+        RECT 4.160 1.760 4.490 1.840 ;
+        RECT 2.800 1.620 2.970 1.760 ;
+        RECT 1.280 1.080 1.610 1.160 ;
+        RECT 1.280 0.910 1.360 1.080 ;
+        RECT 1.530 0.910 1.610 1.080 ;
+        RECT 1.280 0.830 1.610 0.910 ;
+        RECT 2.720 1.080 3.050 1.160 ;
+        RECT 2.720 0.910 2.800 1.080 ;
+        RECT 2.970 0.910 3.050 1.080 ;
+        RECT 2.720 0.830 3.050 0.910 ;
+        RECT 4.160 1.080 4.490 1.160 ;
+        RECT 4.160 0.910 4.240 1.080 ;
+        RECT 4.410 0.920 4.490 1.080 ;
+        RECT 4.410 0.910 4.470 0.920 ;
+        RECT 4.160 0.830 4.470 0.910 ;
+        RECT 4.720 0.750 4.890 2.180 ;
+        RECT 5.600 2.010 5.930 2.090 ;
+        RECT 5.600 1.840 5.680 2.010 ;
+        RECT 5.850 1.840 5.930 2.010 ;
+        RECT 5.600 1.760 5.930 1.840 ;
+        RECT 7.040 2.010 7.370 2.090 ;
+        RECT 7.040 1.840 7.120 2.010 ;
+        RECT 7.290 1.840 7.370 2.010 ;
+        RECT 7.040 1.760 7.370 1.840 ;
+        RECT 8.480 2.010 8.810 2.090 ;
+        RECT 8.480 1.840 8.560 2.010 ;
+        RECT 8.730 1.840 8.810 2.010 ;
+        RECT 8.480 1.760 8.810 1.840 ;
+        RECT 8.560 1.160 8.730 1.760 ;
+        RECT 5.600 1.080 5.930 1.160 ;
+        RECT 5.600 0.910 5.680 1.080 ;
+        RECT 5.850 0.910 5.930 1.080 ;
+        RECT 5.600 0.830 5.930 0.910 ;
+        RECT 7.040 1.080 7.370 1.160 ;
+        RECT 7.040 0.910 7.120 1.080 ;
+        RECT 7.290 0.910 7.370 1.080 ;
+        RECT 7.040 0.830 7.370 0.910 ;
+        RECT 8.480 1.080 8.810 1.160 ;
+        RECT 8.480 0.910 8.560 1.080 ;
+        RECT 8.730 0.910 8.810 1.080 ;
+        RECT 8.480 0.830 8.810 0.910 ;
+        RECT 0.560 0.670 0.890 0.750 ;
+        RECT 0.560 0.500 0.640 0.670 ;
+        RECT 0.810 0.500 0.890 0.670 ;
+        RECT 0.560 0.420 0.890 0.500 ;
+        RECT 4.640 0.670 4.970 0.750 ;
+        RECT 4.640 0.500 4.720 0.670 ;
+        RECT 4.890 0.500 4.970 0.670 ;
+        RECT 8.980 0.670 9.290 0.750 ;
+        RECT 8.980 0.660 9.040 0.670 ;
+        RECT 4.640 0.420 4.970 0.500 ;
+        RECT 8.960 0.500 9.040 0.660 ;
+        RECT 9.210 0.500 9.290 0.670 ;
+        RECT 8.960 0.420 9.290 0.500 ;
+      LAYER met1 ;
+        RECT 2.740 2.830 3.030 2.890 ;
+        RECT 2.740 2.660 2.800 2.830 ;
+        RECT 2.970 2.820 3.030 2.830 ;
+        RECT 2.970 2.680 8.710 2.820 ;
+        RECT 2.970 2.660 3.030 2.680 ;
+        RECT 2.740 2.600 3.030 2.660 ;
+        RECT 0.580 2.430 0.870 2.490 ;
+        RECT 0.580 2.260 0.640 2.430 ;
+        RECT 0.810 2.410 0.870 2.430 ;
+        RECT 4.180 2.430 4.470 2.490 ;
+        RECT 4.180 2.410 4.240 2.430 ;
+        RECT 0.810 2.270 4.240 2.410 ;
+        RECT 0.810 2.260 0.870 2.270 ;
+        RECT 0.580 2.200 0.870 2.260 ;
+        RECT 4.180 2.260 4.240 2.270 ;
+        RECT 4.410 2.410 4.470 2.430 ;
+        RECT 4.410 2.270 6.310 2.410 ;
+        RECT 4.410 2.260 4.470 2.270 ;
+        RECT 4.180 2.200 4.470 2.260 ;
+        RECT 0.650 0.730 0.790 2.200 ;
+        RECT 5.620 1.080 5.910 1.140 ;
+        RECT 5.620 0.910 5.680 1.080 ;
+        RECT 5.850 1.060 5.910 1.080 ;
+        RECT 6.170 1.060 6.310 2.270 ;
+        RECT 8.570 2.070 8.710 2.680 ;
+        RECT 8.980 2.430 9.270 2.490 ;
+        RECT 8.980 2.260 9.040 2.430 ;
+        RECT 9.210 2.260 9.270 2.430 ;
+        RECT 8.980 2.200 9.270 2.260 ;
+        RECT 7.060 2.010 7.350 2.070 ;
+        RECT 7.060 1.840 7.120 2.010 ;
+        RECT 7.290 1.840 7.350 2.010 ;
+        RECT 7.060 1.780 7.350 1.840 ;
+        RECT 8.500 2.010 8.790 2.070 ;
+        RECT 8.500 1.840 8.560 2.010 ;
+        RECT 8.730 1.840 8.790 2.010 ;
+        RECT 8.500 1.780 8.790 1.840 ;
+        RECT 7.130 1.140 7.270 1.780 ;
+        RECT 5.850 0.920 6.310 1.060 ;
+        RECT 7.060 1.080 7.350 1.140 ;
+        RECT 5.850 0.910 5.910 0.920 ;
+        RECT 5.620 0.850 5.910 0.910 ;
+        RECT 7.060 0.910 7.120 1.080 ;
+        RECT 7.290 1.060 7.350 1.080 ;
+        RECT 9.050 1.060 9.190 2.200 ;
+        RECT 7.290 0.920 9.190 1.060 ;
+        RECT 7.290 0.910 7.350 0.920 ;
+        RECT 7.060 0.850 7.350 0.910 ;
+        RECT 9.050 0.730 9.190 0.920 ;
+        RECT 0.580 0.670 0.870 0.730 ;
+        RECT 0.580 0.500 0.640 0.670 ;
+        RECT 0.810 0.500 0.870 0.670 ;
+        RECT 0.580 0.440 0.870 0.500 ;
+        RECT 8.980 0.670 9.270 0.730 ;
+        RECT 8.980 0.500 9.040 0.670 ;
+        RECT 9.210 0.500 9.270 0.670 ;
+        RECT 8.980 0.440 9.270 0.500 ;
+  END
+END XOR2X1
+END LIBRARY
+
diff --git a/cells/lef/XOR2X1.lef.beforemagic b/cells/lef/XOR2X1.lef.beforemagic
index 5171954..9623af6 100644
--- a/cells/lef/XOR2X1.lef.beforemagic
+++ b/cells/lef/XOR2X1.lef.beforemagic
@@ -38,31 +38,10 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 5.13500000 0.44000000 5.42500000 0.51500000 ;
-        RECT 6.09500000 0.44000000 6.38500000 0.51500000 ;
-        RECT 5.13500000 0.51500000 6.38500000 0.65500000 ;
-        RECT 5.13500000 0.65500000 5.42500000 0.73000000 ;
-        RECT 6.09500000 0.65500000 6.38500000 0.73000000 ;
+        RECT 4.65500000 0.44000000 4.94500000 0.73000000 ;
     END
   END Y
 
-  PIN B
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 8.49500000 0.84500000 8.78500000 1.13500000 ;
-        RECT 2.73500000 1.25000000 3.02500000 1.32500000 ;
-        RECT 8.57000000 1.13500000 8.71000000 1.32500000 ;
-        RECT 2.73500000 1.32500000 8.71000000 1.46500000 ;
-        RECT 2.73500000 1.46500000 3.02500000 1.54000000 ;
-        RECT 8.57000000 1.46500000 8.71000000 1.78000000 ;
-        RECT 8.49500000 1.78000000 8.78500000 2.07000000 ;
-    END
-  END B
-
   PIN A
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -70,20 +49,331 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 4.17500000 0.44000000 4.46500000 0.51500000 ;
-        RECT 2.09000000 0.51500000 4.46500000 0.65500000 ;
-        RECT 4.17500000 0.65500000 4.46500000 0.73000000 ;
-        RECT 2.09000000 0.65500000 2.23000000 0.78500000 ;
-        RECT 1.37000000 0.78500000 2.23000000 0.84500000 ;
-        RECT 1.29500000 0.84500000 2.23000000 0.92500000 ;
-        RECT 1.29500000 0.92500000 1.58500000 1.13500000 ;
-        RECT 1.37000000 1.13500000 1.51000000 1.38500000 ;
-        RECT 1.29500000 1.38500000 1.58500000 1.67500000 ;
+        RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
+        RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
+        RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
+        RECT 1.29500000 1.78000000 1.58500000 1.85500000 ;
+        RECT 4.25000000 1.13500000 4.39000000 1.85500000 ;
+        RECT 5.61500000 1.78000000 5.90500000 1.85500000 ;
+        RECT 1.29500000 1.85500000 5.90500000 1.99500000 ;
+        RECT 1.29500000 1.99500000 1.58500000 2.07000000 ;
+        RECT 5.61500000 1.99500000 5.90500000 2.07000000 ;
     END
   END A
 
+  PIN B
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
+        RECT 2.81000000 1.13500000 2.95000000 1.38500000 ;
+        RECT 2.73500000 1.38500000 3.02500000 1.67500000 ;
+    END
+  END B
+
 
   OBS
+    LAYER locali ;
+      RECT ( 0 3.415 ) ( 10.08 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.475 3.415 ) ;
+      RECT ( 4.645 3.245 ) ( 4.955 3.415 ) ;
+      RECT ( 5.125 3.245 ) ( 5.435 3.415 ) ;
+      RECT ( 5.605 3.245 ) ( 5.915 3.415 ) ;
+      RECT ( 6.085 3.245 ) ( 6.395 3.415 ) ;
+      RECT ( 6.565 3.245 ) ( 6.875 3.415 ) ;
+      RECT ( 7.045 3.245 ) ( 7.355 3.415 ) ;
+      RECT ( 7.525 3.245 ) ( 7.835 3.415 ) ;
+      RECT ( 8.005 3.245 ) ( 8.315 3.415 ) ;
+      RECT ( 8.485 3.245 ) ( 8.795 3.415 ) ;
+      RECT ( 8.965 3.245 ) ( 9.275 3.415 ) ;
+      RECT ( 9.445 3.245 ) ( 9.755 3.415 ) ;
+      RECT ( 9.925 3.245 ) ( 10.08 3.415 ) ;
+      RECT ( 0 3.09 ) ( 10.08 3.245 ) ;
+      RECT ( 1.755 2.99 ) ( 2.085 3.09 ) ;
+      RECT ( 1.755 2.82 ) ( 1.835 2.99 ) ;
+      RECT ( 2.005 2.82 ) ( 2.085 2.99 ) ;
+      RECT ( 7.515 2.99 ) ( 7.845 3.09 ) ;
+      RECT ( 1.755 2.74 ) ( 2.085 2.82 ) ;
+      RECT ( 7.515 2.82 ) ( 7.595 2.99 ) ;
+      RECT ( 7.765 2.82 ) ( 7.845 2.99 ) ;
+      RECT ( 7.515 2.74 ) ( 7.845 2.82 ) ;
+      RECT ( 0.555 2.425 ) ( 0.885 2.505 ) ;
+      RECT ( 0.555 2.255 ) ( 0.635 2.425 ) ;
+      RECT ( 0.805 2.255 ) ( 0.885 2.425 ) ;
+      RECT ( 0.555 2.175 ) ( 0.885 2.255 ) ;
+      RECT ( 2.795 2.09 ) ( 2.965 2.66 ) ;
+      RECT ( 4.635 2.425 ) ( 4.965 2.505 ) ;
+      RECT ( 4.635 2.26 ) ( 4.715 2.425 ) ;
+      RECT ( 4.235 2.09 ) ( 4.405 2.255 ) ;
+      RECT ( 4.655 2.255 ) ( 4.715 2.26 ) ;
+      RECT ( 4.885 2.255 ) ( 4.965 2.425 ) ;
+      RECT ( 8.955 2.425 ) ( 9.285 2.505 ) ;
+      RECT ( 8.955 2.26 ) ( 9.035 2.425 ) ;
+      RECT ( 4.655 2.175 ) ( 4.965 2.255 ) ;
+      RECT ( 8.975 2.255 ) ( 9.035 2.26 ) ;
+      RECT ( 9.205 2.255 ) ( 9.285 2.425 ) ;
+      RECT ( 8.975 2.175 ) ( 9.285 2.255 ) ;
+      RECT ( 1.275 2.01 ) ( 1.605 2.09 ) ;
+      RECT ( 1.275 1.84 ) ( 1.355 2.01 ) ;
+      RECT ( 1.525 1.84 ) ( 1.605 2.01 ) ;
+      RECT ( 1.275 1.76 ) ( 1.605 1.84 ) ;
+      RECT ( 2.715 2.01 ) ( 3.045 2.09 ) ;
+      RECT ( 2.715 1.84 ) ( 2.795 2.01 ) ;
+      RECT ( 2.965 1.84 ) ( 3.045 2.01 ) ;
+      RECT ( 2.715 1.76 ) ( 3.045 1.84 ) ;
+      RECT ( 4.155 2.01 ) ( 4.485 2.09 ) ;
+      RECT ( 4.155 1.84 ) ( 4.235 2.01 ) ;
+      RECT ( 4.405 1.84 ) ( 4.485 2.01 ) ;
+      RECT ( 4.155 1.76 ) ( 4.485 1.84 ) ;
+      RECT ( 2.795 1.615 ) ( 2.965 1.76 ) ;
+      RECT ( 1.275 1.075 ) ( 1.605 1.155 ) ;
+      RECT ( 1.275 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.905 ) ( 1.605 1.075 ) ;
+      RECT ( 1.275 0.825 ) ( 1.605 0.905 ) ;
+      RECT ( 2.715 1.075 ) ( 3.045 1.155 ) ;
+      RECT ( 2.715 0.905 ) ( 2.795 1.075 ) ;
+      RECT ( 2.965 0.905 ) ( 3.045 1.075 ) ;
+      RECT ( 2.715 0.825 ) ( 3.045 0.905 ) ;
+      RECT ( 4.155 1.075 ) ( 4.485 1.155 ) ;
+      RECT ( 4.155 0.905 ) ( 4.235 1.075 ) ;
+      RECT ( 4.405 0.92 ) ( 4.485 1.075 ) ;
+      RECT ( 4.405 0.905 ) ( 4.465 0.92 ) ;
+      RECT ( 4.155 0.825 ) ( 4.465 0.905 ) ;
+      RECT ( 4.715 0.75 ) ( 4.885 2.175 ) ;
+      RECT ( 5.595 2.01 ) ( 5.925 2.09 ) ;
+      RECT ( 5.595 1.84 ) ( 5.675 2.01 ) ;
+      RECT ( 5.845 1.84 ) ( 5.925 2.01 ) ;
+      RECT ( 5.595 1.76 ) ( 5.925 1.84 ) ;
+      RECT ( 7.035 2.01 ) ( 7.365 2.09 ) ;
+      RECT ( 7.035 1.84 ) ( 7.115 2.01 ) ;
+      RECT ( 7.285 1.84 ) ( 7.365 2.01 ) ;
+      RECT ( 7.035 1.76 ) ( 7.365 1.84 ) ;
+      RECT ( 8.475 2.01 ) ( 8.805 2.09 ) ;
+      RECT ( 8.475 1.84 ) ( 8.555 2.01 ) ;
+      RECT ( 8.725 1.84 ) ( 8.805 2.01 ) ;
+      RECT ( 8.475 1.76 ) ( 8.805 1.84 ) ;
+      RECT ( 8.555 1.155 ) ( 8.725 1.76 ) ;
+      RECT ( 5.595 1.075 ) ( 5.925 1.155 ) ;
+      RECT ( 5.595 0.905 ) ( 5.675 1.075 ) ;
+      RECT ( 5.845 0.905 ) ( 5.925 1.075 ) ;
+      RECT ( 5.595 0.825 ) ( 5.925 0.905 ) ;
+      RECT ( 7.035 1.075 ) ( 7.365 1.155 ) ;
+      RECT ( 7.035 0.905 ) ( 7.115 1.075 ) ;
+      RECT ( 7.285 0.905 ) ( 7.365 1.075 ) ;
+      RECT ( 7.035 0.825 ) ( 7.365 0.905 ) ;
+      RECT ( 8.475 1.075 ) ( 8.805 1.155 ) ;
+      RECT ( 8.475 0.905 ) ( 8.555 1.075 ) ;
+      RECT ( 8.725 0.905 ) ( 8.805 1.075 ) ;
+      RECT ( 8.475 0.825 ) ( 8.805 0.905 ) ;
+      RECT ( 0.555 0.67 ) ( 0.885 0.75 ) ;
+      RECT ( 0.555 0.5 ) ( 0.635 0.67 ) ;
+      RECT ( 0.805 0.5 ) ( 0.885 0.67 ) ;
+      RECT ( 4.635 0.67 ) ( 4.965 0.75 ) ;
+      RECT ( 0.555 0.42 ) ( 0.885 0.5 ) ;
+      RECT ( 1.755 0.51 ) ( 2.085 0.59 ) ;
+      RECT ( 1.755 0.34 ) ( 1.835 0.51 ) ;
+      RECT ( 2.005 0.34 ) ( 2.085 0.51 ) ;
+      RECT ( 4.635 0.5 ) ( 4.715 0.67 ) ;
+      RECT ( 4.885 0.5 ) ( 4.965 0.67 ) ;
+      RECT ( 8.975 0.67 ) ( 9.285 0.75 ) ;
+      RECT ( 8.975 0.655 ) ( 9.035 0.67 ) ;
+      RECT ( 4.635 0.42 ) ( 4.965 0.5 ) ;
+      RECT ( 7.515 0.51 ) ( 7.845 0.59 ) ;
+      RECT ( 1.755 0.24 ) ( 2.085 0.34 ) ;
+      RECT ( 7.515 0.34 ) ( 7.595 0.51 ) ;
+      RECT ( 7.765 0.34 ) ( 7.845 0.51 ) ;
+      RECT ( 8.955 0.5 ) ( 9.035 0.655 ) ;
+      RECT ( 9.205 0.5 ) ( 9.285 0.67 ) ;
+      RECT ( 8.955 0.42 ) ( 9.285 0.5 ) ;
+      RECT ( 7.515 0.24 ) ( 7.845 0.34 ) ;
+      RECT ( 0 0.085 ) ( 10.08 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.475 0.085 ) ;
+      RECT ( 4.645 -0.085 ) ( 4.955 0.085 ) ;
+      RECT ( 5.125 -0.085 ) ( 5.435 0.085 ) ;
+      RECT ( 5.605 -0.085 ) ( 5.915 0.085 ) ;
+      RECT ( 6.085 -0.085 ) ( 6.395 0.085 ) ;
+      RECT ( 6.565 -0.085 ) ( 6.875 0.085 ) ;
+      RECT ( 7.045 -0.085 ) ( 7.355 0.085 ) ;
+      RECT ( 7.525 -0.085 ) ( 7.835 0.085 ) ;
+      RECT ( 8.005 -0.085 ) ( 8.315 0.085 ) ;
+      RECT ( 8.485 -0.085 ) ( 8.795 0.085 ) ;
+      RECT ( 8.965 -0.085 ) ( 9.275 0.085 ) ;
+      RECT ( 9.445 -0.085 ) ( 9.755 0.085 ) ;
+      RECT ( 9.925 -0.085 ) ( 10.08 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 10.08 -0.085 ) ;
+    LAYER metal1 ;
+      RECT ( 0 3.415 ) ( 10.08 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.155 3.415 ) ;
+      RECT ( 0.325 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 1.115 3.415 ) ;
+      RECT ( 1.285 3.245 ) ( 1.595 3.415 ) ;
+      RECT ( 1.765 3.245 ) ( 2.075 3.415 ) ;
+      RECT ( 2.245 3.245 ) ( 2.555 3.415 ) ;
+      RECT ( 2.725 3.245 ) ( 3.035 3.415 ) ;
+      RECT ( 3.205 3.245 ) ( 3.515 3.415 ) ;
+      RECT ( 3.685 3.245 ) ( 3.995 3.415 ) ;
+      RECT ( 4.165 3.245 ) ( 4.475 3.415 ) ;
+      RECT ( 4.645 3.245 ) ( 4.955 3.415 ) ;
+      RECT ( 5.125 3.245 ) ( 5.435 3.415 ) ;
+      RECT ( 5.605 3.245 ) ( 5.915 3.415 ) ;
+      RECT ( 6.085 3.245 ) ( 6.395 3.415 ) ;
+      RECT ( 6.565 3.245 ) ( 6.875 3.415 ) ;
+      RECT ( 7.045 3.245 ) ( 7.355 3.415 ) ;
+      RECT ( 7.525 3.245 ) ( 7.835 3.415 ) ;
+      RECT ( 8.005 3.245 ) ( 8.315 3.415 ) ;
+      RECT ( 8.485 3.245 ) ( 8.795 3.415 ) ;
+      RECT ( 8.965 3.245 ) ( 9.275 3.415 ) ;
+      RECT ( 9.445 3.245 ) ( 9.755 3.415 ) ;
+      RECT ( 9.925 3.245 ) ( 10.08 3.415 ) ;
+      RECT ( 0 3.09 ) ( 10.08 3.245 ) ;
+      RECT ( 1.775 2.99 ) ( 2.065 3.09 ) ;
+      RECT ( 1.775 2.82 ) ( 1.835 2.99 ) ;
+      RECT ( 2.005 2.82 ) ( 2.065 2.99 ) ;
+      RECT ( 1.775 2.76 ) ( 2.065 2.82 ) ;
+      RECT ( 2.735 2.83 ) ( 3.025 2.89 ) ;
+      RECT ( 2.735 2.66 ) ( 2.795 2.83 ) ;
+      RECT ( 2.965 2.815 ) ( 3.025 2.83 ) ;
+      RECT ( 2.965 2.675 ) ( 8.71 2.815 ) ;
+      RECT ( 2.965 2.66 ) ( 3.025 2.675 ) ;
+      RECT ( 2.735 2.6 ) ( 3.025 2.66 ) ;
+      RECT ( 0.575 2.425 ) ( 0.865 2.485 ) ;
+      RECT ( 0.575 2.255 ) ( 0.635 2.425 ) ;
+      RECT ( 0.805 2.41 ) ( 0.865 2.425 ) ;
+      RECT ( 4.175 2.425 ) ( 4.465 2.485 ) ;
+      RECT ( 4.175 2.41 ) ( 4.235 2.425 ) ;
+      RECT ( 0.805 2.27 ) ( 4.235 2.41 ) ;
+      RECT ( 0.805 2.255 ) ( 0.865 2.27 ) ;
+      RECT ( 0.575 2.195 ) ( 0.865 2.255 ) ;
+      RECT ( 4.175 2.255 ) ( 4.235 2.27 ) ;
+      RECT ( 4.405 2.41 ) ( 4.465 2.425 ) ;
+      RECT ( 4.405 2.27 ) ( 6.31 2.41 ) ;
+      RECT ( 4.405 2.255 ) ( 4.465 2.27 ) ;
+      RECT ( 4.175 2.195 ) ( 4.465 2.255 ) ;
+      RECT ( 0.65 0.73 ) ( 0.79 2.195 ) ;
+      RECT ( 1.295 2.01 ) ( 1.585 2.07 ) ;
+      RECT ( 1.295 1.84 ) ( 1.355 2.01 ) ;
+      RECT ( 1.525 1.995 ) ( 1.585 2.01 ) ;
+      RECT ( 5.615 2.01 ) ( 5.905 2.07 ) ;
+      RECT ( 5.615 1.995 ) ( 5.675 2.01 ) ;
+      RECT ( 1.525 1.855 ) ( 5.675 1.995 ) ;
+      RECT ( 1.525 1.84 ) ( 1.585 1.855 ) ;
+      RECT ( 1.295 1.78 ) ( 1.585 1.84 ) ;
+      RECT ( 1.37 1.135 ) ( 1.51 1.78 ) ;
+      RECT ( 2.735 1.615 ) ( 3.025 1.675 ) ;
+      RECT ( 2.735 1.445 ) ( 2.795 1.615 ) ;
+      RECT ( 2.965 1.445 ) ( 3.025 1.615 ) ;
+      RECT ( 2.735 1.385 ) ( 3.025 1.445 ) ;
+      RECT ( 2.81 1.135 ) ( 2.95 1.385 ) ;
+      RECT ( 4.25 1.135 ) ( 4.39 1.855 ) ;
+      RECT ( 5.615 1.84 ) ( 5.675 1.855 ) ;
+      RECT ( 5.845 1.84 ) ( 5.905 2.01 ) ;
+      RECT ( 5.615 1.78 ) ( 5.905 1.84 ) ;
+      RECT ( 1.295 1.075 ) ( 1.585 1.135 ) ;
+      RECT ( 1.295 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.905 ) ( 1.585 1.075 ) ;
+      RECT ( 1.295 0.845 ) ( 1.585 0.905 ) ;
+      RECT ( 2.735 1.075 ) ( 3.025 1.135 ) ;
+      RECT ( 2.735 0.905 ) ( 2.795 1.075 ) ;
+      RECT ( 2.965 0.905 ) ( 3.025 1.075 ) ;
+      RECT ( 2.735 0.845 ) ( 3.025 0.905 ) ;
+      RECT ( 4.175 1.075 ) ( 4.465 1.135 ) ;
+      RECT ( 4.175 0.905 ) ( 4.235 1.075 ) ;
+      RECT ( 4.405 0.905 ) ( 4.465 1.075 ) ;
+      RECT ( 4.175 0.845 ) ( 4.465 0.905 ) ;
+      RECT ( 5.615 1.075 ) ( 5.905 1.135 ) ;
+      RECT ( 5.615 0.905 ) ( 5.675 1.075 ) ;
+      RECT ( 5.845 1.06 ) ( 5.905 1.075 ) ;
+      RECT ( 6.17 1.06 ) ( 6.31 2.27 ) ;
+      RECT ( 8.57 2.07 ) ( 8.71 2.675 ) ;
+      RECT ( 8.975 2.425 ) ( 9.265 2.485 ) ;
+      RECT ( 8.975 2.255 ) ( 9.035 2.425 ) ;
+      RECT ( 9.205 2.255 ) ( 9.265 2.425 ) ;
+      RECT ( 8.975 2.195 ) ( 9.265 2.255 ) ;
+      RECT ( 7.055 2.01 ) ( 7.345 2.07 ) ;
+      RECT ( 7.055 1.84 ) ( 7.115 2.01 ) ;
+      RECT ( 7.285 1.84 ) ( 7.345 2.01 ) ;
+      RECT ( 7.055 1.78 ) ( 7.345 1.84 ) ;
+      RECT ( 8.495 2.01 ) ( 8.785 2.07 ) ;
+      RECT ( 8.495 1.84 ) ( 8.555 2.01 ) ;
+      RECT ( 8.725 1.84 ) ( 8.785 2.01 ) ;
+      RECT ( 8.495 1.78 ) ( 8.785 1.84 ) ;
+      RECT ( 7.13 1.135 ) ( 7.27 1.78 ) ;
+      RECT ( 5.845 0.92 ) ( 6.31 1.06 ) ;
+      RECT ( 7.055 1.075 ) ( 7.345 1.135 ) ;
+      RECT ( 5.845 0.905 ) ( 5.905 0.92 ) ;
+      RECT ( 5.615 0.845 ) ( 5.905 0.905 ) ;
+      RECT ( 7.055 0.905 ) ( 7.115 1.075 ) ;
+      RECT ( 7.285 1.06 ) ( 7.345 1.075 ) ;
+      RECT ( 9.05 1.06 ) ( 9.19 2.195 ) ;
+      RECT ( 7.285 0.92 ) ( 9.19 1.06 ) ;
+      RECT ( 7.285 0.905 ) ( 7.345 0.92 ) ;
+      RECT ( 7.055 0.845 ) ( 7.345 0.905 ) ;
+      RECT ( 9.05 0.73 ) ( 9.19 0.92 ) ;
+      RECT ( 0.575 0.67 ) ( 0.865 0.73 ) ;
+      RECT ( 0.575 0.5 ) ( 0.635 0.67 ) ;
+      RECT ( 0.805 0.5 ) ( 0.865 0.67 ) ;
+      RECT ( 4.655 0.67 ) ( 4.945 0.73 ) ;
+      RECT ( 0.575 0.44 ) ( 0.865 0.5 ) ;
+      RECT ( 1.775 0.51 ) ( 2.065 0.57 ) ;
+      RECT ( 1.775 0.34 ) ( 1.835 0.51 ) ;
+      RECT ( 2.005 0.34 ) ( 2.065 0.51 ) ;
+      RECT ( 4.655 0.5 ) ( 4.715 0.67 ) ;
+      RECT ( 4.885 0.5 ) ( 4.945 0.67 ) ;
+      RECT ( 8.975 0.67 ) ( 9.265 0.73 ) ;
+      RECT ( 4.655 0.44 ) ( 4.945 0.5 ) ;
+      RECT ( 7.535 0.51 ) ( 7.825 0.57 ) ;
+      RECT ( 1.775 0.24 ) ( 2.065 0.34 ) ;
+      RECT ( 7.535 0.34 ) ( 7.595 0.51 ) ;
+      RECT ( 7.765 0.34 ) ( 7.825 0.51 ) ;
+      RECT ( 8.975 0.5 ) ( 9.035 0.67 ) ;
+      RECT ( 9.205 0.5 ) ( 9.265 0.67 ) ;
+      RECT ( 8.975 0.44 ) ( 9.265 0.5 ) ;
+      RECT ( 7.535 0.24 ) ( 7.825 0.34 ) ;
+      RECT ( 0 0.085 ) ( 10.08 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 0.155 0.085 ) ;
+      RECT ( 0.325 -0.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 1.115 0.085 ) ;
+      RECT ( 1.285 -0.085 ) ( 1.595 0.085 ) ;
+      RECT ( 1.765 -0.085 ) ( 2.075 0.085 ) ;
+      RECT ( 2.245 -0.085 ) ( 2.555 0.085 ) ;
+      RECT ( 2.725 -0.085 ) ( 3.035 0.085 ) ;
+      RECT ( 3.205 -0.085 ) ( 3.515 0.085 ) ;
+      RECT ( 3.685 -0.085 ) ( 3.995 0.085 ) ;
+      RECT ( 4.165 -0.085 ) ( 4.475 0.085 ) ;
+      RECT ( 4.645 -0.085 ) ( 4.955 0.085 ) ;
+      RECT ( 5.125 -0.085 ) ( 5.435 0.085 ) ;
+      RECT ( 5.605 -0.085 ) ( 5.915 0.085 ) ;
+      RECT ( 6.085 -0.085 ) ( 6.395 0.085 ) ;
+      RECT ( 6.565 -0.085 ) ( 6.875 0.085 ) ;
+      RECT ( 7.045 -0.085 ) ( 7.355 0.085 ) ;
+      RECT ( 7.525 -0.085 ) ( 7.835 0.085 ) ;
+      RECT ( 8.005 -0.085 ) ( 8.315 0.085 ) ;
+      RECT ( 8.485 -0.085 ) ( 8.795 0.085 ) ;
+      RECT ( 8.965 -0.085 ) ( 9.275 0.085 ) ;
+      RECT ( 9.445 -0.085 ) ( 9.755 0.085 ) ;
+      RECT ( 9.925 -0.085 ) ( 10.08 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 10.08 -0.085 ) ;
 
   end
 END XOR2X1
diff --git a/cells/lef/XOR2X1.lef.temp b/cells/lef/XOR2X1.lef.temp
index 1bdbdfa..d3b321e 100644
--- a/cells/lef/XOR2X1.lef.temp
+++ b/cells/lef/XOR2X1.lef.temp
@@ -38,31 +38,10 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 5.13500000 0.44000000 5.42500000 0.51500000 ;
-        RECT 6.09500000 0.44000000 6.38500000 0.51500000 ;
-        RECT 5.13500000 0.51500000 6.38500000 0.65500000 ;
-        RECT 5.13500000 0.65500000 5.42500000 0.73000000 ;
-        RECT 6.09500000 0.65500000 6.38500000 0.73000000 ;
+        RECT 4.65500000 0.44000000 4.94500000 0.73000000 ;
     END
   END Y
 
-  PIN B
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 8.49500000 0.84500000 8.78500000 1.13500000 ;
-        RECT 2.73500000 1.25000000 3.02500000 1.32500000 ;
-        RECT 8.57000000 1.13500000 8.71000000 1.32500000 ;
-        RECT 2.73500000 1.32500000 8.71000000 1.46500000 ;
-        RECT 2.73500000 1.46500000 3.02500000 1.54000000 ;
-        RECT 8.57000000 1.46500000 8.71000000 1.78000000 ;
-        RECT 8.49500000 1.78000000 8.78500000 2.07000000 ;
-    END
-  END B
-
   PIN A
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -70,16 +49,29 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 4.17500000 0.44000000 4.46500000 0.51500000 ;
-        RECT 2.09000000 0.51500000 4.46500000 0.65500000 ;
-        RECT 4.17500000 0.65500000 4.46500000 0.73000000 ;
-        RECT 2.09000000 0.65500000 2.23000000 0.78500000 ;
-        RECT 1.37000000 0.78500000 2.23000000 0.84500000 ;
-        RECT 1.29500000 0.84500000 2.23000000 0.92500000 ;
-        RECT 1.29500000 0.92500000 1.58500000 1.13500000 ;
-        RECT 1.37000000 1.13500000 1.51000000 1.38500000 ;
-        RECT 1.29500000 1.38500000 1.58500000 1.67500000 ;
+        RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
+        RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
+        RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
+        RECT 1.29500000 1.78000000 1.58500000 1.85500000 ;
+        RECT 4.25000000 1.13500000 4.39000000 1.85500000 ;
+        RECT 5.61500000 1.78000000 5.90500000 1.85500000 ;
+        RECT 1.29500000 1.85500000 5.90500000 1.99500000 ;
+        RECT 1.29500000 1.99500000 1.58500000 2.07000000 ;
+        RECT 5.61500000 1.99500000 5.90500000 2.07000000 ;
     END
   END A
 
+  PIN B
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
+        RECT 2.81000000 1.13500000 2.95000000 1.38500000 ;
+        RECT 2.73500000 1.38500000 3.02500000 1.67500000 ;
+    END
+  END B
+
 END XOR2X1
diff --git a/cells/lef/magiclefbug.tgz b/cells/lef/magiclefbug.tgz
deleted file mode 100644
index e3f7a03..0000000
--- a/cells/lef/magiclefbug.tgz
+++ /dev/null
Binary files differ
diff --git a/cells/lef/magiclefbug/magic.tcl b/cells/lef/magiclefbug/magic.tcl
deleted file mode 100644
index 12a8341..0000000
--- a/cells/lef/magiclefbug/magic.tcl
+++ /dev/null
@@ -1,5 +0,0 @@
-lef read or.lef
-load or
-lef write or-out.lef
-quit
-
diff --git a/cells/lef/magiclefbug/or-out.lef b/cells/lef/magiclefbug/or-out.lef
deleted file mode 100644
index 7fb9e11..0000000
--- a/cells/lef/magiclefbug/or-out.lef
+++ /dev/null
@@ -1,83 +0,0 @@
-VERSION 5.7 ;
-  NOWIREEXTENSIONATPIN ON ;
-  DIVIDERCHAR "/" ;
-  BUSBITCHARS "[]" ;
-MACRO or
-  CLASS BLOCK ;
-  FOREIGN or ;
-  ORIGIN 0.000 0.000 ;
-  SIZE 5.760 BY 3.330 ;
-  PIN VDD
-    ANTENNAGATEAREA 0.567000 ;
-    ANTENNADIFFAREA 4.227600 ;
-    PORT
-      LAYER li1 ;
-        RECT 0.000 3.090 5.760 3.570 ;
-        RECT 3.200 2.740 3.530 3.090 ;
-        RECT 0.800 2.260 1.130 2.510 ;
-        RECT 0.800 2.180 1.110 2.260 ;
-        RECT 4.640 2.180 4.970 2.510 ;
-        RECT 1.280 1.760 1.610 2.090 ;
-        RECT 2.720 1.760 3.050 2.090 ;
-        RECT 4.160 2.010 4.470 2.090 ;
-        RECT 4.160 1.760 4.490 2.010 ;
-        RECT 1.280 0.830 1.610 1.160 ;
-        RECT 2.720 0.920 3.050 1.160 ;
-        RECT 2.740 0.830 3.050 0.920 ;
-        RECT 4.160 0.920 4.490 1.160 ;
-        RECT 4.160 0.830 4.470 0.920 ;
-        RECT 0.560 0.260 0.890 0.590 ;
-        RECT 2.240 0.420 2.570 0.750 ;
-        RECT 3.200 0.240 3.530 0.590 ;
-        RECT 4.640 0.420 4.970 0.750 ;
-        RECT 0.000 0.090 0.390 0.240 ;
-        RECT 1.060 0.090 5.760 0.240 ;
-        RECT 0.000 -0.240 5.760 0.090 ;
-      LAYER mcon ;
-        RECT 0.160 3.250 0.330 3.420 ;
-        RECT 0.640 3.250 0.810 3.420 ;
-        RECT 1.120 3.250 1.290 3.420 ;
-        RECT 1.600 3.250 1.770 3.420 ;
-        RECT 2.080 3.250 2.250 3.420 ;
-        RECT 2.560 3.250 2.730 3.420 ;
-        RECT 3.040 3.250 3.210 3.420 ;
-        RECT 3.520 3.250 3.690 3.420 ;
-        RECT 4.000 3.250 4.170 3.420 ;
-        RECT 4.480 3.250 4.650 3.420 ;
-        RECT 4.960 3.250 5.130 3.420 ;
-        RECT 5.440 3.250 5.610 3.420 ;
-        RECT 3.280 2.820 3.450 2.990 ;
-        RECT 0.880 2.260 1.050 2.430 ;
-        RECT 4.720 2.260 4.890 2.430 ;
-        RECT 1.360 1.840 1.530 2.010 ;
-        RECT 2.800 1.840 2.970 2.010 ;
-        RECT 4.240 1.840 4.410 2.010 ;
-        RECT 1.360 0.910 1.530 1.080 ;
-        RECT 2.800 0.910 2.970 1.080 ;
-        RECT 4.240 0.910 4.410 1.080 ;
-        RECT 0.640 0.340 0.810 0.510 ;
-        RECT 2.320 0.500 2.490 0.670 ;
-        RECT 4.720 0.500 4.890 0.670 ;
-        RECT 0.160 -0.090 0.330 0.090 ;
-        RECT 0.640 -0.090 0.810 0.090 ;
-        RECT 1.120 -0.090 1.290 0.090 ;
-        RECT 1.600 -0.090 1.770 0.090 ;
-        RECT 2.080 -0.090 2.250 0.090 ;
-        RECT 2.560 -0.090 2.730 0.090 ;
-        RECT 3.040 -0.090 3.210 0.090 ;
-        RECT 3.520 -0.090 3.690 0.090 ;
-        RECT 4.000 -0.090 4.170 0.090 ;
-        RECT 4.480 -0.090 4.650 0.090 ;
-        RECT 4.960 -0.090 5.130 0.090 ;
-        RECT 5.440 -0.090 5.610 0.090 ;
-      LAYER met1 ;
-        RECT 0.000 -0.240 5.760 3.570 ;
-    END
-  END VDD
-  OBS
-      LAYER nwell ;
-        RECT 0.000 1.790 5.760 3.330 ;
-  END
-END or
-END LIBRARY
-
diff --git a/cells/lef/magiclefbug/or.lef b/cells/lef/magiclefbug/or.lef
deleted file mode 100644
index e69e994..0000000
--- a/cells/lef/magiclefbug/or.lef
+++ /dev/null
@@ -1,217 +0,0 @@
-MACRO OR2X1
- CLASS CORE ;
- FOREIGN OR2X1 0 0 ;
- SIZE 5.76 BY 3.33 ;
- ORIGIN 0 0 ;
- SYMMETRY X Y R90 ;
- SITE unit ;
-  PIN vdd
-   DIRECTION INOUT ;
-   USE POWER ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER li1 ;
-        RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
-       LAYER met1 ;
-        RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
-    END
-  END vdd
-
-  PIN gnd
-   DIRECTION INOUT ;
-   USE GROUND ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER li1 ;
-        RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
-       LAYER met1 ;
-        RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
-    END
-  END gnd
-
-  PIN Y
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 4.65500000 0.44000000 4.94500000 0.73000000 ;
-        RECT 4.73000000 0.73000000 4.87000000 2.19500000 ;
-        RECT 4.65500000 2.19500000 4.94500000 2.48500000 ;
-    END
-  END Y
-
-  PIN A
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
-        RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
-        RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
-    END
-  END A
-
-  PIN B
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
-        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
-        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-    END
-  END B
-
-
-  OBS
-    LAYER locali ;
-      RECT ( 0 3.42 ) ( 5.76 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
-      RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
-      RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
-      RECT ( 5.61 3.25 ) ( 5.76 3.42 ) ;
-      RECT ( 0 3.09 ) ( 5.76 3.25 ) ;
-      RECT ( 3.2 2.99 ) ( 3.53 3.09 ) ;
-      RECT ( 3.2 2.82 ) ( 3.28 2.99 ) ;
-      RECT ( 3.45 2.82 ) ( 3.53 2.99 ) ;
-      RECT ( 3.2 2.74 ) ( 3.53 2.82 ) ;
-      RECT ( 0.8 2.43 ) ( 1.13 2.51 ) ;
-      RECT ( 0.8 2.26 ) ( 0.88 2.43 ) ;
-      RECT ( 1.05 2.26 ) ( 1.13 2.43 ) ;
-      RECT ( 4.64 2.43 ) ( 4.97 2.51 ) ;
-      RECT ( 4.64 2.26 ) ( 4.72 2.43 ) ;
-      RECT ( 4.89 2.26 ) ( 4.97 2.43 ) ;
-      RECT ( 0.8 2.18 ) ( 1.11 2.26 ) ;
-      RECT ( 4.64 2.18 ) ( 4.97 2.26 ) ;
-      RECT ( 1.28 2.01 ) ( 1.61 2.09 ) ;
-      RECT ( 1.28 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 1.61 2.01 ) ;
-      RECT ( 1.28 1.76 ) ( 1.61 1.84 ) ;
-      RECT ( 2.72 2.01 ) ( 3.05 2.09 ) ;
-      RECT ( 2.72 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 3.05 2.01 ) ;
-      RECT ( 2.72 1.76 ) ( 3.05 1.84 ) ;
-      RECT ( 4.16 2.01 ) ( 4.47 2.09 ) ;
-      RECT ( 4.16 1.84 ) ( 4.24 2.01 ) ;
-      RECT ( 4.41 1.84 ) ( 4.49 2.01 ) ;
-      RECT ( 4.16 1.76 ) ( 4.49 1.84 ) ;
-      RECT ( 1.28 1.08 ) ( 1.61 1.16 ) ;
-      RECT ( 1.28 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 1.61 1.08 ) ;
-      RECT ( 2.72 1.08 ) ( 3.05 1.16 ) ;
-      RECT ( 2.72 0.92 ) ( 2.8 1.08 ) ;
-      RECT ( 1.28 0.83 ) ( 1.61 0.91 ) ;
-      RECT ( 2.74 0.91 ) ( 2.8 0.92 ) ;
-      RECT ( 2.97 0.91 ) ( 3.05 1.08 ) ;
-      RECT ( 2.74 0.83 ) ( 3.05 0.91 ) ;
-      RECT ( 4.16 1.08 ) ( 4.49 1.16 ) ;
-      RECT ( 4.16 0.91 ) ( 4.24 1.08 ) ;
-      RECT ( 4.41 0.92 ) ( 4.49 1.08 ) ;
-      RECT ( 4.41 0.91 ) ( 4.47 0.92 ) ;
-      RECT ( 4.16 0.83 ) ( 4.47 0.91 ) ;
-      RECT ( 2.24 0.67 ) ( 2.57 0.75 ) ;
-      RECT ( 0.56 0.51 ) ( 0.89 0.59 ) ;
-      RECT ( 0.56 0.34 ) ( 0.64 0.51 ) ;
-      RECT ( 0.81 0.34 ) ( 0.89 0.51 ) ;
-      RECT ( 2.24 0.5 ) ( 2.32 0.67 ) ;
-      RECT ( 2.49 0.5 ) ( 2.57 0.67 ) ;
-      RECT ( 4.64 0.67 ) ( 4.97 0.75 ) ;
-      RECT ( 2.24 0.42 ) ( 2.57 0.5 ) ;
-      RECT ( 3.2 0.51 ) ( 3.53 0.59 ) ;
-      RECT ( 0.56 0.26 ) ( 0.89 0.34 ) ;
-      RECT ( 3.2 0.34 ) ( 3.28 0.51 ) ;
-      RECT ( 3.45 0.34 ) ( 3.53 0.51 ) ;
-      RECT ( 4.64 0.5 ) ( 4.72 0.67 ) ;
-      RECT ( 4.89 0.5 ) ( 4.97 0.67 ) ;
-      RECT ( 4.64 0.42 ) ( 4.97 0.5 ) ;
-      RECT ( 3.2 0.24 ) ( 3.53 0.34 ) ;
-      RECT ( 0 0.09 ) ( 0.39 0.24 ) ;
-      RECT ( 1.06 0.09 ) ( 5.76 0.24 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
-      RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
-      RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
-      RECT ( 5.61 -0.09 ) ( 5.76 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 5.76 -0.09 ) ;
-    LAYER metal1 ;
-      RECT ( 0 3.42 ) ( 5.76 3.57 ) ;
-      RECT ( 0 3.25 ) ( 0.16 3.42 ) ;
-      RECT ( 0.33 3.25 ) ( 0.64 3.42 ) ;
-      RECT ( 0.81 3.25 ) ( 1.12 3.42 ) ;
-      RECT ( 1.29 3.25 ) ( 1.6 3.42 ) ;
-      RECT ( 1.77 3.25 ) ( 2.08 3.42 ) ;
-      RECT ( 2.25 3.25 ) ( 2.56 3.42 ) ;
-      RECT ( 2.73 3.25 ) ( 3.04 3.42 ) ;
-      RECT ( 3.21 3.25 ) ( 3.52 3.42 ) ;
-      RECT ( 3.69 3.25 ) ( 4 3.42 ) ;
-      RECT ( 4.17 3.25 ) ( 4.48 3.42 ) ;
-      RECT ( 4.65 3.25 ) ( 4.96 3.42 ) ;
-      RECT ( 5.13 3.25 ) ( 5.44 3.42 ) ;
-      RECT ( 5.61 3.25 ) ( 5.76 3.42 ) ;
-      RECT ( 0 2.99 ) ( 5.76 3.25 ) ;
-      RECT ( 0 2.82 ) ( 3.28 2.99 ) ;
-      RECT ( 3.45 2.82 ) ( 5.76 2.99 ) ;
-      RECT ( 0 2.43 ) ( 5.76 2.82 ) ;
-      RECT ( 0 2.26 ) ( 0.88 2.43 ) ;
-      RECT ( 1.05 2.26 ) ( 4.72 2.43 ) ;
-      RECT ( 4.89 2.26 ) ( 5.76 2.43 ) ;
-      RECT ( 0 2.01 ) ( 5.76 2.26 ) ;
-      RECT ( 0 1.84 ) ( 1.36 2.01 ) ;
-      RECT ( 1.53 1.84 ) ( 2.8 2.01 ) ;
-      RECT ( 2.97 1.84 ) ( 4.24 2.01 ) ;
-      RECT ( 4.41 1.84 ) ( 5.76 2.01 ) ;
-      RECT ( 0 1.08 ) ( 5.76 1.84 ) ;
-      RECT ( 0 0.91 ) ( 1.36 1.08 ) ;
-      RECT ( 1.53 0.91 ) ( 2.8 1.08 ) ;
-      RECT ( 2.97 0.91 ) ( 4.24 1.08 ) ;
-      RECT ( 4.41 0.91 ) ( 5.76 1.08 ) ;
-      RECT ( 0 0.67 ) ( 5.76 0.91 ) ;
-      RECT ( 0 0.51 ) ( 2.32 0.67 ) ;
-      RECT ( 0 0.34 ) ( 0.64 0.51 ) ;
-      RECT ( 0.81 0.5 ) ( 2.32 0.51 ) ;
-      RECT ( 2.49 0.5 ) ( 4.72 0.67 ) ;
-      RECT ( 4.89 0.5 ) ( 5.76 0.67 ) ;
-      RECT ( 0.81 0.34 ) ( 5.76 0.5 ) ;
-      RECT ( 0 0.09 ) ( 5.76 0.34 ) ;
-      RECT ( 0 -0.09 ) ( 0.16 0.09 ) ;
-      RECT ( 0.33 -0.09 ) ( 0.64 0.09 ) ;
-      RECT ( 0.81 -0.09 ) ( 1.12 0.09 ) ;
-      RECT ( 1.29 -0.09 ) ( 1.6 0.09 ) ;
-      RECT ( 1.77 -0.09 ) ( 2.08 0.09 ) ;
-      RECT ( 2.25 -0.09 ) ( 2.56 0.09 ) ;
-      RECT ( 2.73 -0.09 ) ( 3.04 0.09 ) ;
-      RECT ( 3.21 -0.09 ) ( 3.52 0.09 ) ;
-      RECT ( 3.69 -0.09 ) ( 4 0.09 ) ;
-      RECT ( 4.17 -0.09 ) ( 4.48 0.09 ) ;
-      RECT ( 4.65 -0.09 ) ( 4.96 0.09 ) ;
-      RECT ( 5.13 -0.09 ) ( 5.44 0.09 ) ;
-      RECT ( 5.61 -0.09 ) ( 5.76 0.09 ) ;
-      RECT ( 0 -0.24 ) ( 5.76 -0.09 ) ;
-
-  end
-END OR2X1
diff --git a/cells/lef/magiclefbug/or.mag b/cells/lef/magiclefbug/or.mag
deleted file mode 100644
index c61f422..0000000
--- a/cells/lef/magiclefbug/or.mag
+++ /dev/null
@@ -1,310 +0,0 @@
-magic
-tech sky130A
-timestamp 1624575559
-<< nwell >>
-rect 0 179 576 333
-<< nmos >>
-rect 137 24 152 66
-rect 281 24 296 66
-rect 425 24 440 66
-<< pmos >>
-rect 137 225 152 309
-rect 281 225 296 309
-rect 425 225 440 309
-<< ndiff >>
-rect 226 67 255 73
-rect 226 66 232 67
-rect 58 51 137 66
-rect 58 34 64 51
-rect 81 34 137 51
-rect 58 24 137 34
-rect 152 50 232 66
-rect 249 66 255 67
-rect 466 67 495 73
-rect 466 66 472 67
-rect 249 50 281 66
-rect 152 24 281 50
-rect 296 51 425 66
-rect 296 34 328 51
-rect 345 34 425 51
-rect 296 24 425 34
-rect 440 50 472 66
-rect 489 66 495 67
-rect 489 50 519 66
-rect 440 24 519 50
-<< pdiff >>
-rect 58 243 137 309
-rect 58 226 88 243
-rect 105 226 137 243
-rect 58 225 137 226
-rect 152 225 281 309
-rect 296 299 425 309
-rect 296 282 328 299
-rect 345 282 425 299
-rect 296 225 425 282
-rect 440 243 519 309
-rect 440 226 472 243
-rect 489 226 519 243
-rect 440 225 519 226
-rect 82 220 111 225
-rect 466 220 495 225
-<< ndiffc >>
-rect 64 34 81 51
-rect 232 50 249 67
-rect 328 34 345 51
-rect 472 50 489 67
-<< pdiffc >>
-rect 88 226 105 243
-rect 328 282 345 299
-rect 472 226 489 243
-<< poly >>
-rect 137 309 152 322
-rect 281 309 296 322
-rect 425 309 440 322
-rect 137 209 152 225
-rect 281 209 296 225
-rect 425 209 440 225
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 416 201 449 209
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 91 305 108
-rect 272 83 305 91
-rect 416 108 449 116
-rect 416 91 424 108
-rect 441 91 449 108
-rect 416 83 449 91
-rect 137 66 152 83
-rect 281 66 296 83
-rect 425 66 440 83
-rect 137 11 152 24
-rect 281 11 296 24
-rect 425 11 440 24
-<< polycont >>
-rect 136 184 153 201
-rect 280 184 297 201
-rect 424 184 441 201
-rect 136 91 153 108
-rect 280 91 297 108
-rect 424 91 441 108
-<< locali >>
-rect 0 342 576 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 448 342
-rect 465 325 496 342
-rect 513 325 544 342
-rect 561 325 576 342
-rect 0 309 576 325
-rect 320 299 353 309
-rect 320 282 328 299
-rect 345 282 353 299
-rect 320 274 353 282
-rect 80 243 113 251
-rect 80 226 88 243
-rect 105 226 113 243
-rect 464 243 497 251
-rect 464 226 472 243
-rect 489 226 497 243
-rect 80 218 111 226
-rect 464 218 497 226
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 416 201 447 209
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 272 108 305 116
-rect 272 92 280 108
-rect 128 83 161 91
-rect 274 91 280 92
-rect 297 91 305 108
-rect 274 83 305 91
-rect 416 108 449 116
-rect 416 91 424 108
-rect 441 92 449 108
-rect 441 91 447 92
-rect 416 83 447 91
-rect 224 67 257 75
-rect 56 51 89 59
-rect 56 34 64 51
-rect 81 34 89 51
-rect 224 50 232 67
-rect 249 50 257 67
-rect 464 67 497 75
-rect 224 42 257 50
-rect 320 51 353 59
-rect 56 26 89 34
-rect 320 34 328 51
-rect 345 34 353 51
-rect 464 50 472 67
-rect 489 50 497 67
-rect 464 42 497 50
-rect 320 24 353 34
-rect 0 9 39 24
-rect 106 9 576 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 448 9
-rect 465 -9 496 9
-rect 513 -9 544 9
-rect 561 -9 576 9
-rect 0 -24 576 -9
-<< viali >>
-rect 16 325 33 342
-rect 64 325 81 342
-rect 112 325 129 342
-rect 160 325 177 342
-rect 208 325 225 342
-rect 256 325 273 342
-rect 304 325 321 342
-rect 352 325 369 342
-rect 400 325 417 342
-rect 448 325 465 342
-rect 496 325 513 342
-rect 544 325 561 342
-rect 328 282 345 299
-rect 88 226 105 243
-rect 472 226 489 243
-rect 136 184 153 201
-rect 280 184 297 201
-rect 424 184 441 201
-rect 136 91 153 108
-rect 280 91 297 108
-rect 424 91 441 108
-rect 64 34 81 51
-rect 232 50 249 67
-rect 472 50 489 67
-rect 16 -9 33 9
-rect 64 -9 81 9
-rect 112 -9 129 9
-rect 160 -9 177 9
-rect 208 -9 225 9
-rect 256 -9 273 9
-rect 304 -9 321 9
-rect 352 -9 369 9
-rect 400 -9 417 9
-rect 448 -9 465 9
-rect 496 -9 513 9
-rect 544 -9 561 9
-<< metal1 >>
-rect 0 342 576 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 448 342
-rect 465 325 496 342
-rect 513 325 544 342
-rect 561 325 576 342
-rect 0 299 576 325
-rect 0 282 328 299
-rect 345 282 576 299
-rect 0 243 576 282
-rect 0 226 88 243
-rect 105 226 472 243
-rect 489 226 576 243
-rect 0 201 576 226
-rect 0 184 136 201
-rect 153 184 280 201
-rect 297 184 424 201
-rect 441 184 576 201
-rect 0 108 576 184
-rect 0 91 136 108
-rect 153 91 280 108
-rect 297 91 424 108
-rect 441 91 576 108
-rect 0 67 576 91
-rect 0 51 232 67
-rect 0 34 64 51
-rect 81 50 232 51
-rect 249 50 472 67
-rect 489 50 576 67
-rect 81 34 576 50
-rect 0 9 576 34
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 448 9
-rect 465 -9 496 9
-rect 513 -9 544 9
-rect 561 -9 576 9
-rect 0 -24 576 -9
-<< labels >>
-rlabel locali 0 309 576 357 0 VDD
-port 1 se
-rlabel metal1 274 178 303 207 0 B
-port 13 se
-rlabel metal1 281 114 295 178 0 B
-port 12 se
-rlabel metal1 274 85 303 114 0 B
-port 11 se
-rlabel metal1 130 178 159 207 0 A
-port 10 se
-rlabel metal1 137 114 151 178 0 A
-port 9 se
-rlabel metal1 130 85 159 114 0 A
-port 8 se
-rlabel metal1 466 220 495 249 0 Y
-port 7 se
-rlabel metal1 473 73 487 220 0 Y
-port 6 se
-rlabel metal1 466 44 495 73 0 Y
-port 5 se
-rlabel metal1 0 -24 576 24 0 GND
-port 4 se
-rlabel metal1 0 -24 576 24 0 GND
-port 3 se
-rlabel metal1 0 309 576 357 0 VDD
-port 2 se
-<< properties >>
-string FIXED_BBOX 0 0 576 333
-<< end >>
diff --git a/cells/lef/orig/AND2X1.lef b/cells/lef/orig/AND2X1.lef
index cbc8a50..cfcd7d6 100644
--- a/cells/lef/orig/AND2X1.lef
+++ b/cells/lef/orig/AND2X1.lef
@@ -44,6 +44,19 @@
     END
   END Y
 
+  PIN B
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
+        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
+        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+    END
+  END B
+
   PIN A
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -57,19 +70,6 @@
     END
   END A
 
-  PIN B
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
-        RECT 2.81000000 1.54000000 2.95000000 1.78000000 ;
-        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-    END
-  END B
-
  OBS
     LAYER polycont ;
      RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
@@ -96,9 +96,8 @@
      RECT 0.79500000 0.42000000 1.12500000 0.75000000 ;
      RECT 4.63500000 0.42000000 4.96500000 0.75000000 ;
      RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
-     RECT 4.15500000 0.82500000 4.48500000 1.15500000 ;
      RECT 2.71500000 0.82500000 3.04500000 1.15500000 ;
-     RECT 2.79500000 1.15500000 2.96500000 1.48000000 ;
+     RECT 4.15500000 0.82500000 4.48500000 1.15500000 ;
      RECT 1.27500000 1.76000000 1.60500000 2.09000000 ;
      RECT 2.71500000 1.76000000 3.04500000 2.09000000 ;
      RECT 4.15500000 1.76000000 4.48500000 2.09000000 ;
@@ -125,8 +124,8 @@
      RECT 0.87500000 0.50000000 1.04500000 0.67000000 ;
      RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
      RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
+     RECT 2.79500000 0.90500000 2.96500000 1.07500000 ;
      RECT 4.23500000 0.90500000 4.40500000 1.07500000 ;
-     RECT 2.79500000 1.31000000 2.96500000 1.48000000 ;
      RECT 1.35500000 1.84000000 1.52500000 2.01000000 ;
      RECT 2.79500000 1.84000000 2.96500000 2.01000000 ;
      RECT 4.23500000 1.84000000 4.40500000 2.01000000 ;
@@ -153,20 +152,18 @@
      RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
      RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
      RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
-     RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
-     RECT 2.81000000 1.54000000 2.95000000 1.78000000 ;
+     RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
+     RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
      RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-     RECT 0.81500000 0.44000000 1.10500000 0.51500000 ;
-     RECT 0.81500000 0.51500000 1.99000000 0.65500000 ;
-     RECT 0.81500000 0.65500000 1.10500000 0.73000000 ;
-     RECT 1.85000000 0.65500000 1.99000000 0.92000000 ;
-     RECT 4.17500000 0.84500000 4.46500000 0.92000000 ;
-     RECT 1.85000000 0.92000000 4.46500000 1.06000000 ;
-     RECT 4.17500000 1.06000000 4.46500000 1.13500000 ;
+     RECT 0.81500000 0.44000000 1.10500000 0.73000000 ;
+     RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
      RECT 4.25000000 1.13500000 4.39000000 1.78000000 ;
      RECT 4.17500000 1.78000000 4.46500000 2.07000000 ;
-     RECT 1.85000000 1.06000000 1.99000000 2.19500000 ;
-     RECT 1.77500000 2.19500000 2.06500000 2.48500000 ;
+     RECT 0.89000000 0.73000000 1.03000000 2.27000000 ;
+     RECT 1.77500000 2.19500000 2.06500000 2.27000000 ;
+     RECT 4.25000000 2.07000000 4.39000000 2.27000000 ;
+     RECT 0.89000000 2.27000000 4.39000000 2.41000000 ;
+     RECT 1.77500000 2.41000000 2.06500000 2.48500000 ;
      RECT 4.65500000 0.44000000 4.94500000 0.73000000 ;
      RECT 4.73000000 0.73000000 4.87000000 2.19500000 ;
      RECT 4.65500000 2.19500000 4.94500000 2.48500000 ;
diff --git a/cells/lef/orig/AND2X2.lef b/cells/lef/orig/AND2X2.lef
index 989ef84..aa48554 100644
--- a/cells/lef/orig/AND2X2.lef
+++ b/cells/lef/orig/AND2X2.lef
@@ -44,19 +44,6 @@
     END
   END Y
 
-  PIN B
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
-        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
-        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-    END
-  END B
-
   PIN A
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -70,6 +57,17 @@
     END
   END A
 
+  PIN B
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+    END
+  END B
+
  OBS
     LAYER polycont ;
      RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
@@ -96,9 +94,10 @@
      RECT 0.79500000 0.42000000 1.12500000 0.75000000 ;
      RECT 4.63500000 0.42000000 4.96500000 0.75000000 ;
      RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
-     RECT 2.71500000 0.82500000 3.04500000 1.15500000 ;
      RECT 4.15500000 0.82500000 4.48500000 1.15500000 ;
      RECT 1.27500000 1.76000000 1.60500000 2.09000000 ;
+     RECT 2.71500000 0.82500000 3.04500000 1.15500000 ;
+     RECT 2.79500000 1.15500000 2.96500000 1.76000000 ;
      RECT 2.71500000 1.76000000 3.04500000 2.09000000 ;
      RECT 4.15500000 1.76000000 4.48500000 2.09000000 ;
      RECT 1.75500000 2.17500000 2.08500000 2.50500000 ;
@@ -124,7 +123,6 @@
      RECT 0.87500000 0.50000000 1.04500000 0.67000000 ;
      RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
      RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
-     RECT 2.79500000 0.90500000 2.96500000 1.07500000 ;
      RECT 4.23500000 0.90500000 4.40500000 1.07500000 ;
      RECT 1.35500000 1.84000000 1.52500000 2.01000000 ;
      RECT 2.79500000 1.84000000 2.96500000 2.01000000 ;
@@ -152,18 +150,18 @@
      RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
      RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
      RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
-     RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
-     RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
      RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-     RECT 0.81500000 0.44000000 1.10500000 0.73000000 ;
-     RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
+     RECT 0.81500000 0.44000000 1.10500000 0.51500000 ;
+     RECT 0.81500000 0.51500000 1.99000000 0.65500000 ;
+     RECT 0.81500000 0.65500000 1.10500000 0.73000000 ;
+     RECT 1.85000000 0.65500000 1.99000000 0.92000000 ;
+     RECT 4.17500000 0.84500000 4.46500000 0.92000000 ;
+     RECT 1.85000000 0.92000000 4.46500000 1.06000000 ;
+     RECT 4.17500000 1.06000000 4.46500000 1.13500000 ;
      RECT 4.25000000 1.13500000 4.39000000 1.78000000 ;
      RECT 4.17500000 1.78000000 4.46500000 2.07000000 ;
-     RECT 0.89000000 0.73000000 1.03000000 2.27000000 ;
-     RECT 1.77500000 2.19500000 2.06500000 2.27000000 ;
-     RECT 4.25000000 2.07000000 4.39000000 2.27000000 ;
-     RECT 0.89000000 2.27000000 4.39000000 2.41000000 ;
-     RECT 1.77500000 2.41000000 2.06500000 2.48500000 ;
+     RECT 1.85000000 1.06000000 1.99000000 2.19500000 ;
+     RECT 1.77500000 2.19500000 2.06500000 2.48500000 ;
      RECT 4.65500000 0.44000000 4.94500000 0.73000000 ;
      RECT 4.73000000 0.73000000 4.87000000 2.19500000 ;
      RECT 4.65500000 2.19500000 4.94500000 2.48500000 ;
diff --git a/cells/lef/orig/AOI21X1.lef b/cells/lef/orig/AOI21X1.lef
index cba5adb..fe3a99e 100644
--- a/cells/lef/orig/AOI21X1.lef
+++ b/cells/lef/orig/AOI21X1.lef
@@ -48,6 +48,19 @@
     END
   END Y
 
+  PIN A
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
+        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
+        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+    END
+  END A
+
   PIN C
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -74,19 +87,6 @@
     END
   END B
 
-  PIN A
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
-        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
-        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-    END
-  END A
-
  OBS
     LAYER polycont ;
      RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
diff --git a/cells/lef/orig/AOI22X1.lef b/cells/lef/orig/AOI22X1.lef
index 4630962..836bb14 100644
--- a/cells/lef/orig/AOI22X1.lef
+++ b/cells/lef/orig/AOI22X1.lef
@@ -43,26 +43,11 @@
         RECT 0.81500000 0.51500000 6.38500000 0.65500000 ;
         RECT 0.81500000 0.65500000 1.10500000 0.73000000 ;
         RECT 6.09500000 0.65500000 6.38500000 0.73000000 ;
-        RECT 5.13500000 2.19500000 5.42500000 2.27000000 ;
-        RECT 6.17000000 0.73000000 6.31000000 2.27000000 ;
-        RECT 5.13500000 2.27000000 6.31000000 2.41000000 ;
-        RECT 5.13500000 2.41000000 5.42500000 2.48500000 ;
+        RECT 5.21000000 0.65500000 5.35000000 2.19500000 ;
+        RECT 5.13500000 2.19500000 5.42500000 2.48500000 ;
     END
   END Y
 
-  PIN C
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
-        RECT 4.25000000 1.13500000 4.39000000 1.78000000 ;
-        RECT 4.17500000 1.78000000 4.46500000 2.07000000 ;
-    END
-  END C
-
   PIN D
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -76,19 +61,6 @@
     END
   END D
 
-  PIN A
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
-        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
-        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-    END
-  END A
-
   PIN B
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -102,6 +74,32 @@
     END
   END B
 
+  PIN C
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
+        RECT 4.25000000 1.13500000 4.39000000 1.78000000 ;
+        RECT 4.17500000 1.78000000 4.46500000 2.07000000 ;
+    END
+  END C
+
+  PIN A
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
+        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
+        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+    END
+  END A
+
  OBS
     LAYER polycont ;
      RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
@@ -114,9 +112,9 @@
      RECT 5.67500000 1.84000000 5.84500000 2.01000000 ;
 
     LAYER pdiffc ;
+     RECT 0.87500000 2.25500000 1.04500000 2.42500000 ;
+     RECT 3.27500000 2.25500000 3.44500000 2.42500000 ;
      RECT 5.19500000 2.25500000 5.36500000 2.42500000 ;
-     RECT 0.87500000 2.39000000 1.04500000 2.56000000 ;
-     RECT 3.75500000 2.66000000 3.92500000 2.83000000 ;
      RECT 6.15500000 2.66000000 6.32500000 2.83000000 ;
      RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
 
@@ -138,9 +136,9 @@
      RECT 2.71500000 1.76000000 3.04500000 2.09000000 ;
      RECT 4.15500000 1.76000000 4.48500000 2.09000000 ;
      RECT 5.59500000 1.76000000 5.92500000 2.09000000 ;
+     RECT 0.79500000 2.17500000 1.12500000 2.50500000 ;
+     RECT 3.19500000 2.17500000 3.52500000 2.50500000 ;
      RECT 5.11500000 2.17500000 5.44500000 2.50500000 ;
-     RECT 0.79500000 2.31000000 1.12500000 2.64000000 ;
-     RECT 3.67500000 2.58000000 4.00500000 2.91000000 ;
      RECT 6.07500000 2.58000000 6.40500000 2.91000000 ;
      RECT 1.75500000 2.74000000 2.08500000 3.09000000 ;
      RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
@@ -171,9 +169,9 @@
      RECT 2.79500000 1.84000000 2.96500000 2.01000000 ;
      RECT 4.23500000 1.84000000 4.40500000 2.01000000 ;
      RECT 5.67500000 1.84000000 5.84500000 2.01000000 ;
+     RECT 0.87500000 2.25500000 1.04500000 2.42500000 ;
+     RECT 3.27500000 2.25500000 3.44500000 2.42500000 ;
      RECT 5.19500000 2.25500000 5.36500000 2.42500000 ;
-     RECT 0.87500000 2.39000000 1.04500000 2.56000000 ;
-     RECT 3.75500000 2.66000000 3.92500000 2.83000000 ;
      RECT 6.15500000 2.66000000 6.32500000 2.83000000 ;
      RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
      RECT 0.15500000 3.24500000 0.32500000 3.41500000 ;
@@ -211,18 +209,16 @@
      RECT 0.81500000 0.51500000 6.38500000 0.65500000 ;
      RECT 0.81500000 0.65500000 1.10500000 0.73000000 ;
      RECT 6.09500000 0.65500000 6.38500000 0.73000000 ;
-     RECT 5.13500000 2.19500000 5.42500000 2.27000000 ;
-     RECT 6.17000000 0.73000000 6.31000000 2.27000000 ;
-     RECT 5.13500000 2.27000000 6.31000000 2.41000000 ;
-     RECT 5.13500000 2.41000000 5.42500000 2.48500000 ;
-     RECT 0.81500000 2.33000000 1.10500000 2.40500000 ;
-     RECT 0.81500000 2.40500000 3.91000000 2.54500000 ;
-     RECT 3.69500000 2.54500000 3.91000000 2.60000000 ;
-     RECT 0.81500000 2.54500000 1.10500000 2.62000000 ;
-     RECT 3.69500000 2.60000000 3.98500000 2.67500000 ;
+     RECT 5.21000000 0.65500000 5.35000000 2.19500000 ;
+     RECT 5.13500000 2.19500000 5.42500000 2.48500000 ;
+     RECT 0.81500000 2.19500000 1.10500000 2.27000000 ;
+     RECT 3.21500000 2.19500000 3.50500000 2.27000000 ;
+     RECT 0.81500000 2.27000000 3.50500000 2.41000000 ;
+     RECT 0.81500000 2.41000000 1.10500000 2.48500000 ;
+     RECT 3.21500000 2.41000000 3.50500000 2.48500000 ;
+     RECT 3.29000000 2.48500000 3.43000000 2.67500000 ;
      RECT 6.09500000 2.60000000 6.38500000 2.67500000 ;
-     RECT 3.69500000 2.67500000 6.38500000 2.81500000 ;
-     RECT 3.69500000 2.81500000 3.98500000 2.89000000 ;
+     RECT 3.29000000 2.67500000 6.38500000 2.81500000 ;
      RECT 6.09500000 2.81500000 6.38500000 2.89000000 ;
      RECT 1.77500000 2.76000000 2.06500000 3.09000000 ;
      RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
diff --git a/cells/lef/orig/BUFX2.lef b/cells/lef/orig/BUFX2.lef
index ecbf6b6..465b8cf 100644
--- a/cells/lef/orig/BUFX2.lef
+++ b/cells/lef/orig/BUFX2.lef
@@ -51,9 +51,7 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 1.29500000 1.25000000 1.58500000 1.54000000 ;
-        RECT 1.37000000 1.54000000 1.51000000 1.78000000 ;
-        RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
+        RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
     END
   END A
 
@@ -81,7 +79,7 @@
      RECT 3.19500000 0.42000000 3.52500000 0.75000000 ;
      RECT 2.71500000 0.82500000 3.04500000 1.15500000 ;
      RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
-     RECT 1.35500000 1.15500000 1.52500000 1.48000000 ;
+     RECT 1.35500000 1.15500000 1.52500000 1.76000000 ;
      RECT 1.27500000 1.76000000 1.60500000 2.09000000 ;
      RECT 2.71500000 1.76000000 3.04500000 2.09000000 ;
      RECT 0.55500000 2.17500000 0.88500000 2.50500000 ;
@@ -102,9 +100,8 @@
      RECT 1.83500000 0.34000000 2.00500000 0.51000000 ;
      RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
      RECT 3.27500000 0.50000000 3.44500000 0.67000000 ;
+     RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
      RECT 2.79500000 0.90500000 2.96500000 1.07500000 ;
-     RECT 1.35500000 1.31000000 1.52500000 1.48000000 ;
-     RECT 1.35500000 1.84000000 1.52500000 2.01000000 ;
      RECT 2.79500000 1.84000000 2.96500000 2.01000000 ;
      RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
      RECT 3.27500000 2.25500000 3.44500000 2.42500000 ;
@@ -122,17 +119,15 @@
     LAYER met1 ;
      RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
      RECT 1.77500000 0.24000000 2.06500000 0.57000000 ;
-     RECT 1.29500000 1.25000000 1.58500000 1.54000000 ;
-     RECT 1.37000000 1.54000000 1.51000000 1.78000000 ;
-     RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
+     RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
      RECT 0.57500000 0.44000000 0.86500000 0.73000000 ;
-     RECT 0.65000000 0.73000000 0.79000000 0.92000000 ;
-     RECT 2.73500000 0.84500000 3.02500000 0.92000000 ;
-     RECT 0.65000000 0.92000000 3.02500000 1.06000000 ;
-     RECT 2.73500000 1.06000000 3.02500000 1.13500000 ;
+     RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
      RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
-     RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-     RECT 0.65000000 1.06000000 0.79000000 2.19500000 ;
+     RECT 0.65000000 0.73000000 0.79000000 1.85500000 ;
+     RECT 2.73500000 1.78000000 3.02500000 1.85500000 ;
+     RECT 0.65000000 1.85500000 3.02500000 1.99500000 ;
+     RECT 2.73500000 1.99500000 3.02500000 2.07000000 ;
+     RECT 0.65000000 1.99500000 0.79000000 2.19500000 ;
      RECT 0.57500000 2.19500000 0.86500000 2.48500000 ;
      RECT 3.21500000 0.44000000 3.50500000 0.73000000 ;
      RECT 3.29000000 0.73000000 3.43000000 2.19500000 ;
diff --git a/cells/lef/orig/CLKBUF1.lef b/cells/lef/orig/CLKBUF1.lef
index e6a17a0..af35e64 100644
--- a/cells/lef/orig/CLKBUF1.lef
+++ b/cells/lef/orig/CLKBUF1.lef
@@ -38,9 +38,7 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 10.41500000 1.25000000 10.70500000 1.54000000 ;
-        RECT 10.49000000 1.54000000 10.63000000 2.19500000 ;
-        RECT 10.41500000 2.19500000 10.70500000 2.48500000 ;
+        RECT 10.41500000 0.44000000 10.70500000 0.73000000 ;
     END
   END Y
 
@@ -52,7 +50,9 @@
      CLASS CORE ;
        LAYER met1 ;
         RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
+        RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
         RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
+        RECT 2.81000000 1.54000000 2.95000000 1.78000000 ;
         RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
         RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
         RECT 1.37000000 2.07000000 1.51000000 2.67500000 ;
@@ -114,29 +114,31 @@
      RECT 7.51500000 0.42000000 7.84500000 0.75000000 ;
      RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
      RECT 4.15500000 0.82500000 4.48500000 1.15500000 ;
+     RECT 5.59500000 0.82500000 5.92500000 1.15500000 ;
      RECT 7.03500000 0.82500000 7.36500000 1.15500000 ;
+     RECT 8.47500000 0.82500000 8.80500000 1.15500000 ;
      RECT 9.91500000 0.82500000 10.24500000 1.15500000 ;
      RECT 11.35500000 0.82500000 11.68500000 1.15500000 ;
-     RECT 10.39500000 0.42000000 10.72500000 0.75000000 ;
-     RECT 10.47500000 0.75000000 10.64500000 1.48000000 ;
-     RECT 1.27500000 1.76000000 1.60500000 2.09000000 ;
      RECT 2.71500000 0.82500000 3.04500000 1.15500000 ;
-     RECT 2.79500000 1.15500000 2.96500000 1.76000000 ;
+     RECT 2.79500000 1.15500000 2.96500000 1.48000000 ;
+     RECT 1.27500000 1.76000000 1.60500000 2.09000000 ;
      RECT 2.71500000 1.76000000 3.04500000 2.09000000 ;
      RECT 4.15500000 1.76000000 4.48500000 2.09000000 ;
-     RECT 5.59500000 0.82500000 5.92500000 1.15500000 ;
-     RECT 5.67500000 1.15500000 5.84500000 1.76000000 ;
-     RECT 5.59500000 1.76000000 5.92500000 2.09000000 ;
      RECT 7.03500000 1.76000000 7.36500000 2.09000000 ;
-     RECT 8.47500000 0.82500000 8.80500000 1.15500000 ;
-     RECT 8.55500000 1.15500000 8.72500000 1.76000000 ;
-     RECT 8.47500000 1.76000000 8.80500000 2.09000000 ;
      RECT 9.91500000 1.76000000 10.24500000 2.09000000 ;
      RECT 11.35500000 1.76000000 11.68500000 2.09000000 ;
      RECT 1.75500000 2.17500000 2.08500000 2.50500000 ;
      RECT 4.63500000 2.17500000 4.96500000 2.50500000 ;
      RECT 7.51500000 2.17500000 7.84500000 2.50500000 ;
+     RECT 10.39500000 0.42000000 10.72500000 0.75000000 ;
+     RECT 10.47500000 0.75000000 10.64500000 2.17500000 ;
      RECT 10.39500000 2.17500000 10.72500000 2.50500000 ;
+     RECT 5.67500000 1.44500000 5.84500000 1.76000000 ;
+     RECT 5.59500000 1.76000000 5.92500000 2.09000000 ;
+     RECT 5.67500000 2.09000000 5.84500000 2.83000000 ;
+     RECT 8.55500000 1.44500000 8.72500000 1.76000000 ;
+     RECT 8.47500000 1.76000000 8.80500000 2.09000000 ;
+     RECT 8.55500000 2.09000000 8.72500000 2.83000000 ;
      RECT 0.55500000 2.74000000 0.88500000 3.09000000 ;
      RECT 3.19500000 2.74000000 3.52500000 3.09000000 ;
      RECT 6.07500000 2.74000000 6.40500000 3.09000000 ;
@@ -180,24 +182,28 @@
      RECT 1.83500000 0.50000000 2.00500000 0.67000000 ;
      RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
      RECT 7.59500000 0.50000000 7.76500000 0.67000000 ;
+     RECT 10.47500000 0.50000000 10.64500000 0.67000000 ;
      RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
      RECT 4.23500000 0.90500000 4.40500000 1.07500000 ;
+     RECT 5.67500000 0.90500000 5.84500000 1.07500000 ;
      RECT 7.11500000 0.90500000 7.28500000 1.07500000 ;
+     RECT 8.55500000 0.90500000 8.72500000 1.07500000 ;
      RECT 9.99500000 0.90500000 10.16500000 1.07500000 ;
      RECT 11.43500000 0.90500000 11.60500000 1.07500000 ;
-     RECT 10.47500000 1.31000000 10.64500000 1.48000000 ;
+     RECT 2.79500000 1.31000000 2.96500000 1.48000000 ;
+     RECT 5.67500000 1.44500000 5.84500000 1.61500000 ;
+     RECT 8.55500000 1.44500000 8.72500000 1.61500000 ;
      RECT 1.35500000 1.84000000 1.52500000 2.01000000 ;
      RECT 2.79500000 1.84000000 2.96500000 2.01000000 ;
      RECT 4.23500000 1.84000000 4.40500000 2.01000000 ;
-     RECT 5.67500000 1.84000000 5.84500000 2.01000000 ;
      RECT 7.11500000 1.84000000 7.28500000 2.01000000 ;
-     RECT 8.55500000 1.84000000 8.72500000 2.01000000 ;
      RECT 9.99500000 1.84000000 10.16500000 2.01000000 ;
      RECT 11.43500000 1.84000000 11.60500000 2.01000000 ;
      RECT 1.83500000 2.25500000 2.00500000 2.42500000 ;
      RECT 4.71500000 2.25500000 4.88500000 2.42500000 ;
      RECT 7.59500000 2.25500000 7.76500000 2.42500000 ;
-     RECT 10.47500000 2.25500000 10.64500000 2.42500000 ;
+     RECT 5.67500000 2.66000000 5.84500000 2.83000000 ;
+     RECT 8.55500000 2.66000000 8.72500000 2.83000000 ;
      RECT 0.63500000 2.82000000 0.80500000 2.99000000 ;
      RECT 3.27500000 2.82000000 3.44500000 2.99000000 ;
      RECT 6.15500000 2.82000000 6.32500000 2.99000000 ;
@@ -238,24 +244,30 @@
      RECT 6.09500000 0.24000000 6.38500000 0.57000000 ;
      RECT 8.97500000 0.24000000 9.26500000 0.57000000 ;
      RECT 11.85500000 0.24000000 12.14500000 0.57000000 ;
+     RECT 10.41500000 0.44000000 10.70500000 0.73000000 ;
+     RECT 5.61500000 0.84500000 5.90500000 1.13500000 ;
+     RECT 5.69000000 1.13500000 5.83000000 1.38500000 ;
+     RECT 5.61500000 1.38500000 5.90500000 1.67500000 ;
+     RECT 8.49500000 0.84500000 8.78500000 1.13500000 ;
+     RECT 8.57000000 1.13500000 8.71000000 1.38500000 ;
+     RECT 8.49500000 1.38500000 8.78500000 1.67500000 ;
      RECT 7.53500000 0.44000000 7.82500000 0.73000000 ;
-     RECT 7.61000000 0.73000000 7.75000000 0.92000000 ;
-     RECT 9.93500000 0.84500000 10.22500000 0.92000000 ;
-     RECT 11.37500000 0.84500000 11.66500000 0.92000000 ;
-     RECT 7.61000000 0.92000000 11.66500000 1.06000000 ;
-     RECT 9.93500000 1.06000000 10.22500000 1.13500000 ;
-     RECT 11.37500000 1.06000000 11.66500000 1.13500000 ;
+     RECT 9.93500000 0.84500000 10.22500000 1.13500000 ;
+     RECT 11.37500000 0.84500000 11.66500000 1.13500000 ;
      RECT 10.01000000 1.13500000 10.15000000 1.78000000 ;
      RECT 11.45000000 1.13500000 11.59000000 1.78000000 ;
-     RECT 9.93500000 1.78000000 10.22500000 2.07000000 ;
-     RECT 11.37500000 1.78000000 11.66500000 2.07000000 ;
-     RECT 7.61000000 1.06000000 7.75000000 2.19500000 ;
+     RECT 7.61000000 0.73000000 7.75000000 1.85500000 ;
+     RECT 9.93500000 1.78000000 10.22500000 1.85500000 ;
+     RECT 11.37500000 1.78000000 11.66500000 1.85500000 ;
+     RECT 7.61000000 1.85500000 11.66500000 1.99500000 ;
+     RECT 9.93500000 1.99500000 10.22500000 2.07000000 ;
+     RECT 11.37500000 1.99500000 11.66500000 2.07000000 ;
+     RECT 7.61000000 1.99500000 7.75000000 2.19500000 ;
      RECT 7.53500000 2.19500000 7.82500000 2.48500000 ;
-     RECT 10.41500000 1.25000000 10.70500000 1.54000000 ;
-     RECT 10.49000000 1.54000000 10.63000000 2.19500000 ;
-     RECT 10.41500000 2.19500000 10.70500000 2.48500000 ;
      RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
+     RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
      RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
+     RECT 2.81000000 1.54000000 2.95000000 1.78000000 ;
      RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
      RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
      RECT 1.37000000 2.07000000 1.51000000 2.67500000 ;
@@ -268,25 +280,25 @@
      RECT 4.17500000 1.06000000 4.46500000 1.13500000 ;
      RECT 4.25000000 1.13500000 4.39000000 1.78000000 ;
      RECT 4.17500000 1.78000000 4.46500000 2.07000000 ;
-     RECT 5.61500000 1.78000000 5.90500000 2.07000000 ;
      RECT 1.85000000 1.06000000 1.99000000 2.19500000 ;
      RECT 1.77500000 2.19500000 2.06500000 2.48500000 ;
      RECT 4.25000000 2.07000000 4.39000000 2.67500000 ;
-     RECT 5.69000000 2.07000000 5.83000000 2.67500000 ;
-     RECT 4.25000000 2.67500000 5.83000000 2.81500000 ;
+     RECT 5.61500000 2.60000000 5.90500000 2.67500000 ;
+     RECT 4.25000000 2.67500000 5.90500000 2.81500000 ;
+     RECT 5.61500000 2.81500000 5.90500000 2.89000000 ;
      RECT 4.65500000 0.44000000 4.94500000 0.73000000 ;
-     RECT 4.73000000 0.73000000 4.87000000 0.92000000 ;
-     RECT 7.05500000 0.84500000 7.34500000 0.92000000 ;
-     RECT 4.73000000 0.92000000 7.34500000 1.06000000 ;
-     RECT 7.05500000 1.06000000 7.34500000 1.13500000 ;
+     RECT 7.05500000 0.84500000 7.34500000 1.13500000 ;
      RECT 7.13000000 1.13500000 7.27000000 1.78000000 ;
-     RECT 7.05500000 1.78000000 7.34500000 2.07000000 ;
-     RECT 8.49500000 1.78000000 8.78500000 2.07000000 ;
-     RECT 4.73000000 1.06000000 4.87000000 2.19500000 ;
+     RECT 4.73000000 0.73000000 4.87000000 1.85500000 ;
+     RECT 7.05500000 1.78000000 7.34500000 1.85500000 ;
+     RECT 4.73000000 1.85500000 7.34500000 1.99500000 ;
+     RECT 7.05500000 1.99500000 7.34500000 2.07000000 ;
+     RECT 4.73000000 1.99500000 4.87000000 2.19500000 ;
      RECT 4.65500000 2.19500000 4.94500000 2.48500000 ;
      RECT 7.13000000 2.07000000 7.27000000 2.67500000 ;
-     RECT 8.57000000 2.07000000 8.71000000 2.67500000 ;
-     RECT 7.13000000 2.67500000 8.71000000 2.81500000 ;
+     RECT 8.49500000 2.60000000 8.78500000 2.67500000 ;
+     RECT 7.13000000 2.67500000 8.78500000 2.81500000 ;
+     RECT 8.49500000 2.81500000 8.78500000 2.89000000 ;
      RECT 0.57500000 2.76000000 0.86500000 3.09000000 ;
      RECT 3.21500000 2.76000000 3.50500000 3.09000000 ;
      RECT 6.09500000 2.76000000 6.38500000 3.09000000 ;
diff --git a/cells/lef/orig/INVX4.lef b/cells/lef/orig/INVX4.lef
index 11e024e..1049b43 100644
--- a/cells/lef/orig/INVX4.lef
+++ b/cells/lef/orig/INVX4.lef
@@ -38,15 +38,15 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 0.57500000 0.44000000 0.86500000 0.51500000 ;
-        RECT 3.21500000 0.44000000 3.50500000 0.51500000 ;
-        RECT 0.57500000 0.51500000 3.50500000 0.65500000 ;
-        RECT 0.57500000 0.65500000 0.86500000 0.73000000 ;
-        RECT 3.21500000 0.65500000 3.50500000 0.73000000 ;
+        RECT 0.57500000 0.44000000 0.86500000 0.73000000 ;
+        RECT 3.21500000 0.44000000 3.50500000 0.73000000 ;
         RECT 0.65000000 0.73000000 0.79000000 2.19500000 ;
         RECT 3.29000000 0.73000000 3.43000000 2.19500000 ;
-        RECT 0.57500000 2.19500000 0.86500000 2.48500000 ;
-        RECT 3.21500000 2.19500000 3.50500000 2.48500000 ;
+        RECT 0.57500000 2.19500000 0.86500000 2.27000000 ;
+        RECT 3.21500000 2.19500000 3.50500000 2.27000000 ;
+        RECT 0.57500000 2.27000000 3.50500000 2.41000000 ;
+        RECT 0.57500000 2.41000000 0.86500000 2.48500000 ;
+        RECT 3.21500000 2.41000000 3.50500000 2.48500000 ;
     END
   END Y
 
@@ -57,15 +57,15 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 1.29500000 0.84500000 1.58500000 0.92000000 ;
-        RECT 2.73500000 0.84500000 3.02500000 0.92000000 ;
-        RECT 1.29500000 0.92000000 3.02500000 1.06000000 ;
-        RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
-        RECT 2.73500000 1.06000000 3.02500000 1.13500000 ;
+        RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
+        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
         RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
         RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
-        RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
-        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+        RECT 1.29500000 1.78000000 1.58500000 1.85500000 ;
+        RECT 2.73500000 1.78000000 3.02500000 1.85500000 ;
+        RECT 1.29500000 1.85500000 3.02500000 1.99500000 ;
+        RECT 1.29500000 1.99500000 1.58500000 2.07000000 ;
+        RECT 2.73500000 1.99500000 3.02500000 2.07000000 ;
     END
   END A
 
@@ -110,6 +110,7 @@
      RECT 3.03500000 -0.08500000 3.20500000 0.08500000 ;
      RECT 3.51500000 -0.08500000 3.68500000 0.08500000 ;
      RECT 3.99500000 -0.08500000 4.16500000 0.08500000 ;
+     RECT 1.83500000 0.34000000 2.00500000 0.51000000 ;
      RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
      RECT 3.27500000 0.50000000 3.44500000 0.67000000 ;
      RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
@@ -131,24 +132,25 @@
 
     LAYER met1 ;
      RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
-     RECT 1.29500000 0.84500000 1.58500000 0.92000000 ;
-     RECT 2.73500000 0.84500000 3.02500000 0.92000000 ;
-     RECT 1.29500000 0.92000000 3.02500000 1.06000000 ;
-     RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
-     RECT 2.73500000 1.06000000 3.02500000 1.13500000 ;
+     RECT 1.77500000 0.24000000 2.06500000 0.57000000 ;
+     RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
+     RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
      RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
      RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
-     RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
-     RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-     RECT 0.57500000 0.44000000 0.86500000 0.51500000 ;
-     RECT 3.21500000 0.44000000 3.50500000 0.51500000 ;
-     RECT 0.57500000 0.51500000 3.50500000 0.65500000 ;
-     RECT 0.57500000 0.65500000 0.86500000 0.73000000 ;
-     RECT 3.21500000 0.65500000 3.50500000 0.73000000 ;
+     RECT 1.29500000 1.78000000 1.58500000 1.85500000 ;
+     RECT 2.73500000 1.78000000 3.02500000 1.85500000 ;
+     RECT 1.29500000 1.85500000 3.02500000 1.99500000 ;
+     RECT 1.29500000 1.99500000 1.58500000 2.07000000 ;
+     RECT 2.73500000 1.99500000 3.02500000 2.07000000 ;
+     RECT 0.57500000 0.44000000 0.86500000 0.73000000 ;
+     RECT 3.21500000 0.44000000 3.50500000 0.73000000 ;
      RECT 0.65000000 0.73000000 0.79000000 2.19500000 ;
      RECT 3.29000000 0.73000000 3.43000000 2.19500000 ;
-     RECT 0.57500000 2.19500000 0.86500000 2.48500000 ;
-     RECT 3.21500000 2.19500000 3.50500000 2.48500000 ;
+     RECT 0.57500000 2.19500000 0.86500000 2.27000000 ;
+     RECT 3.21500000 2.19500000 3.50500000 2.27000000 ;
+     RECT 0.57500000 2.27000000 3.50500000 2.41000000 ;
+     RECT 0.57500000 2.41000000 0.86500000 2.48500000 ;
+     RECT 3.21500000 2.41000000 3.50500000 2.48500000 ;
      RECT 1.77500000 2.76000000 2.06500000 3.09000000 ;
      RECT 0.00000000 3.09000000 4.32000000 3.57000000 ;
 
diff --git a/cells/lef/orig/INVX8.lef b/cells/lef/orig/INVX8.lef
index b2db4d5..fc8e72b 100644
--- a/cells/lef/orig/INVX8.lef
+++ b/cells/lef/orig/INVX8.lef
@@ -38,19 +38,19 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 0.81500000 0.44000000 1.10500000 0.51500000 ;
         RECT 3.69500000 0.44000000 3.98500000 0.51500000 ;
         RECT 6.09500000 0.44000000 6.38500000 0.51500000 ;
-        RECT 0.81500000 0.51500000 6.38500000 0.65500000 ;
-        RECT 0.81500000 0.65500000 1.10500000 0.73000000 ;
+        RECT 3.69500000 0.51500000 6.38500000 0.65500000 ;
+        RECT 0.81500000 0.44000000 1.10500000 0.73000000 ;
         RECT 3.69500000 0.65500000 3.98500000 0.73000000 ;
         RECT 6.09500000 0.65500000 6.38500000 0.73000000 ;
         RECT 0.89000000 0.73000000 1.03000000 2.19500000 ;
         RECT 6.17000000 0.73000000 6.31000000 2.19500000 ;
+        RECT 0.81500000 2.19500000 1.10500000 2.27000000 ;
         RECT 3.69500000 2.19500000 3.98500000 2.27000000 ;
         RECT 6.09500000 2.19500000 6.38500000 2.27000000 ;
-        RECT 3.69500000 2.27000000 6.38500000 2.41000000 ;
-        RECT 0.81500000 2.19500000 1.10500000 2.48500000 ;
+        RECT 0.81500000 2.27000000 6.38500000 2.41000000 ;
+        RECT 0.81500000 2.41000000 1.10500000 2.48500000 ;
         RECT 3.69500000 2.41000000 3.98500000 2.48500000 ;
         RECT 6.09500000 2.41000000 6.38500000 2.48500000 ;
     END
@@ -63,23 +63,23 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
-        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
-        RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
-        RECT 5.61500000 0.84500000 5.90500000 1.13500000 ;
+        RECT 1.29500000 0.84500000 1.58500000 0.92000000 ;
+        RECT 2.73500000 0.84500000 3.02500000 0.92000000 ;
+        RECT 4.17500000 0.84500000 4.46500000 0.92000000 ;
+        RECT 5.61500000 0.84500000 5.90500000 0.92000000 ;
+        RECT 1.29500000 0.92000000 5.90500000 1.06000000 ;
+        RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
+        RECT 2.73500000 1.06000000 3.02500000 1.13500000 ;
+        RECT 4.17500000 1.06000000 4.46500000 1.13500000 ;
+        RECT 5.61500000 1.06000000 5.90500000 1.13500000 ;
         RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
         RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
         RECT 4.25000000 1.13500000 4.39000000 1.78000000 ;
         RECT 5.69000000 1.13500000 5.83000000 1.78000000 ;
-        RECT 1.29500000 1.78000000 1.58500000 1.85500000 ;
-        RECT 2.73500000 1.78000000 3.02500000 1.85500000 ;
-        RECT 4.17500000 1.78000000 4.46500000 1.85500000 ;
-        RECT 5.61500000 1.78000000 5.90500000 1.85500000 ;
-        RECT 1.29500000 1.85500000 5.90500000 1.99500000 ;
-        RECT 1.29500000 1.99500000 1.58500000 2.07000000 ;
-        RECT 2.73500000 1.99500000 3.02500000 2.07000000 ;
-        RECT 4.17500000 1.99500000 4.46500000 2.07000000 ;
-        RECT 5.61500000 1.99500000 5.90500000 2.07000000 ;
+        RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
+        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+        RECT 4.17500000 1.78000000 4.46500000 2.07000000 ;
+        RECT 5.61500000 1.78000000 5.90500000 2.07000000 ;
     END
   END A
 
@@ -180,36 +180,36 @@
 
     LAYER met1 ;
      RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
-     RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
-     RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
-     RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
-     RECT 5.61500000 0.84500000 5.90500000 1.13500000 ;
+     RECT 1.29500000 0.84500000 1.58500000 0.92000000 ;
+     RECT 2.73500000 0.84500000 3.02500000 0.92000000 ;
+     RECT 4.17500000 0.84500000 4.46500000 0.92000000 ;
+     RECT 5.61500000 0.84500000 5.90500000 0.92000000 ;
+     RECT 1.29500000 0.92000000 5.90500000 1.06000000 ;
+     RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
+     RECT 2.73500000 1.06000000 3.02500000 1.13500000 ;
+     RECT 4.17500000 1.06000000 4.46500000 1.13500000 ;
+     RECT 5.61500000 1.06000000 5.90500000 1.13500000 ;
      RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
      RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
      RECT 4.25000000 1.13500000 4.39000000 1.78000000 ;
      RECT 5.69000000 1.13500000 5.83000000 1.78000000 ;
-     RECT 1.29500000 1.78000000 1.58500000 1.85500000 ;
-     RECT 2.73500000 1.78000000 3.02500000 1.85500000 ;
-     RECT 4.17500000 1.78000000 4.46500000 1.85500000 ;
-     RECT 5.61500000 1.78000000 5.90500000 1.85500000 ;
-     RECT 1.29500000 1.85500000 5.90500000 1.99500000 ;
-     RECT 1.29500000 1.99500000 1.58500000 2.07000000 ;
-     RECT 2.73500000 1.99500000 3.02500000 2.07000000 ;
-     RECT 4.17500000 1.99500000 4.46500000 2.07000000 ;
-     RECT 5.61500000 1.99500000 5.90500000 2.07000000 ;
-     RECT 0.81500000 0.44000000 1.10500000 0.51500000 ;
+     RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
+     RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+     RECT 4.17500000 1.78000000 4.46500000 2.07000000 ;
+     RECT 5.61500000 1.78000000 5.90500000 2.07000000 ;
      RECT 3.69500000 0.44000000 3.98500000 0.51500000 ;
      RECT 6.09500000 0.44000000 6.38500000 0.51500000 ;
-     RECT 0.81500000 0.51500000 6.38500000 0.65500000 ;
-     RECT 0.81500000 0.65500000 1.10500000 0.73000000 ;
+     RECT 3.69500000 0.51500000 6.38500000 0.65500000 ;
+     RECT 0.81500000 0.44000000 1.10500000 0.73000000 ;
      RECT 3.69500000 0.65500000 3.98500000 0.73000000 ;
      RECT 6.09500000 0.65500000 6.38500000 0.73000000 ;
      RECT 0.89000000 0.73000000 1.03000000 2.19500000 ;
      RECT 6.17000000 0.73000000 6.31000000 2.19500000 ;
+     RECT 0.81500000 2.19500000 1.10500000 2.27000000 ;
      RECT 3.69500000 2.19500000 3.98500000 2.27000000 ;
      RECT 6.09500000 2.19500000 6.38500000 2.27000000 ;
-     RECT 3.69500000 2.27000000 6.38500000 2.41000000 ;
-     RECT 0.81500000 2.19500000 1.10500000 2.48500000 ;
+     RECT 0.81500000 2.27000000 6.38500000 2.41000000 ;
+     RECT 0.81500000 2.41000000 1.10500000 2.48500000 ;
      RECT 3.69500000 2.41000000 3.98500000 2.48500000 ;
      RECT 6.09500000 2.41000000 6.38500000 2.48500000 ;
      RECT 1.77500000 2.76000000 2.06500000 3.09000000 ;
diff --git a/cells/lef/orig/MUX2X1.lef b/cells/lef/orig/MUX2X1.lef
index 1f9006b..c7a43c0 100644
--- a/cells/lef/orig/MUX2X1.lef
+++ b/cells/lef/orig/MUX2X1.lef
@@ -48,19 +48,6 @@
     END
   END Y
 
-  PIN B
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 7.05500000 0.84500000 7.34500000 1.13500000 ;
-        RECT 7.13000000 1.13500000 7.27000000 1.78000000 ;
-        RECT 7.05500000 1.78000000 7.34500000 2.07000000 ;
-    END
-  END B
-
   PIN S
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -89,6 +76,19 @@
     END
   END A
 
+  PIN B
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 7.05500000 0.84500000 7.34500000 1.13500000 ;
+        RECT 7.13000000 1.13500000 7.27000000 1.78000000 ;
+        RECT 7.05500000 1.78000000 7.34500000 2.07000000 ;
+    END
+  END B
+
  OBS
     LAYER polycont ;
      RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
diff --git a/cells/lef/orig/NAND2X1.lef b/cells/lef/orig/NAND2X1.lef
index ec6be55..0e83e1f 100644
--- a/cells/lef/orig/NAND2X1.lef
+++ b/cells/lef/orig/NAND2X1.lef
@@ -48,19 +48,6 @@
     END
   END Y
 
-  PIN A
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
-        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
-        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-    END
-  END A
-
   PIN B
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -74,6 +61,19 @@
     END
   END B
 
+  PIN A
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
+        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
+        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+    END
+  END A
+
  OBS
     LAYER polycont ;
      RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
diff --git a/cells/lef/orig/OR2X1.lef b/cells/lef/orig/OR2X1.lef
index 6688562..362b0c4 100644
--- a/cells/lef/orig/OR2X1.lef
+++ b/cells/lef/orig/OR2X1.lef
@@ -44,19 +44,6 @@
     END
   END Y
 
-  PIN B
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
-        RECT 2.81000000 1.54000000 2.95000000 1.78000000 ;
-        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-    END
-  END B
-
   PIN A
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -70,6 +57,17 @@
     END
   END A
 
+  PIN B
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+    END
+  END B
+
  OBS
     LAYER polycont ;
      RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
@@ -99,9 +97,9 @@
      RECT 4.15500000 0.82500000 4.48500000 1.15500000 ;
      RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
      RECT 1.35500000 1.15500000 1.52500000 1.48000000 ;
-     RECT 2.71500000 0.82500000 3.04500000 1.15500000 ;
-     RECT 2.79500000 1.15500000 2.96500000 1.48000000 ;
      RECT 1.27500000 1.76000000 1.60500000 2.09000000 ;
+     RECT 2.71500000 0.82500000 3.04500000 1.15500000 ;
+     RECT 2.79500000 1.15500000 2.96500000 1.76000000 ;
      RECT 2.71500000 1.76000000 3.04500000 2.09000000 ;
      RECT 4.15500000 1.76000000 4.48500000 2.09000000 ;
      RECT 0.79500000 2.17500000 1.12500000 2.50500000 ;
@@ -128,7 +126,6 @@
      RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
      RECT 4.23500000 0.90500000 4.40500000 1.07500000 ;
      RECT 1.35500000 1.31000000 1.52500000 1.48000000 ;
-     RECT 2.79500000 1.31000000 2.96500000 1.48000000 ;
      RECT 1.35500000 1.84000000 1.52500000 2.01000000 ;
      RECT 2.79500000 1.84000000 2.96500000 2.01000000 ;
      RECT 4.23500000 1.84000000 4.40500000 2.01000000 ;
@@ -155,8 +152,6 @@
      RECT 1.29500000 1.25000000 1.58500000 1.54000000 ;
      RECT 1.37000000 1.54000000 1.51000000 1.78000000 ;
      RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
-     RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
-     RECT 2.81000000 1.54000000 2.95000000 1.78000000 ;
      RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
      RECT 2.25500000 0.44000000 2.54500000 0.73000000 ;
      RECT 2.33000000 0.73000000 2.47000000 0.92000000 ;
diff --git a/cells/lef/orig/OR2X2.lef b/cells/lef/orig/OR2X2.lef
index 6315fe5..aa4b700 100644
--- a/cells/lef/orig/OR2X2.lef
+++ b/cells/lef/orig/OR2X2.lef
@@ -44,19 +44,6 @@
     END
   END Y
 
-  PIN B
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
-        RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
-        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-    END
-  END B
-
   PIN A
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -64,12 +51,23 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
-        RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
         RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
     END
   END A
 
+  PIN B
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
+        RECT 2.81000000 1.54000000 2.95000000 1.78000000 ;
+        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+    END
+  END B
+
  OBS
     LAYER polycont ;
      RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
@@ -96,9 +94,11 @@
      RECT 3.19500000 0.24000000 3.52500000 0.59000000 ;
      RECT 2.23500000 0.42000000 2.56500000 0.75000000 ;
      RECT 4.63500000 0.42000000 4.96500000 0.75000000 ;
-     RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
-     RECT 2.71500000 0.82500000 3.04500000 1.15500000 ;
      RECT 4.15500000 0.82500000 4.48500000 1.15500000 ;
+     RECT 2.71500000 0.82500000 3.04500000 1.15500000 ;
+     RECT 2.79500000 1.15500000 2.96500000 1.48000000 ;
+     RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
+     RECT 1.35500000 1.15500000 1.52500000 1.76000000 ;
      RECT 1.27500000 1.76000000 1.60500000 2.09000000 ;
      RECT 2.71500000 1.76000000 3.04500000 2.09000000 ;
      RECT 4.15500000 1.76000000 4.48500000 2.09000000 ;
@@ -121,11 +121,11 @@
      RECT 4.95500000 -0.08500000 5.12500000 0.08500000 ;
      RECT 5.43500000 -0.08500000 5.60500000 0.08500000 ;
      RECT 0.63500000 0.34000000 0.80500000 0.51000000 ;
+     RECT 3.27500000 0.34000000 3.44500000 0.51000000 ;
      RECT 2.31500000 0.50000000 2.48500000 0.67000000 ;
      RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
-     RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
-     RECT 2.79500000 0.90500000 2.96500000 1.07500000 ;
      RECT 4.23500000 0.90500000 4.40500000 1.07500000 ;
+     RECT 2.79500000 1.31000000 2.96500000 1.48000000 ;
      RECT 1.35500000 1.84000000 1.52500000 2.01000000 ;
      RECT 2.79500000 1.84000000 2.96500000 2.01000000 ;
      RECT 4.23500000 1.84000000 4.40500000 2.01000000 ;
@@ -148,23 +148,20 @@
     LAYER met1 ;
      RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
      RECT 0.57500000 0.24000000 0.86500000 0.57000000 ;
-     RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
-     RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
+     RECT 3.21500000 0.24000000 3.50500000 0.57000000 ;
      RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
-     RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
-     RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
+     RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
+     RECT 2.81000000 1.54000000 2.95000000 1.78000000 ;
      RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-     RECT 2.25500000 0.44000000 2.54500000 0.51500000 ;
-     RECT 2.25500000 0.51500000 4.39000000 0.65500000 ;
-     RECT 2.25500000 0.65500000 2.54500000 0.73000000 ;
-     RECT 4.25000000 0.65500000 4.39000000 0.84500000 ;
-     RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
+     RECT 2.25500000 0.44000000 2.54500000 0.73000000 ;
+     RECT 2.33000000 0.73000000 2.47000000 0.92000000 ;
+     RECT 4.17500000 0.84500000 4.46500000 0.92000000 ;
+     RECT 0.89000000 0.92000000 4.46500000 1.06000000 ;
+     RECT 4.17500000 1.06000000 4.46500000 1.13500000 ;
      RECT 4.25000000 1.13500000 4.39000000 1.78000000 ;
      RECT 4.17500000 1.78000000 4.46500000 2.07000000 ;
-     RECT 0.81500000 2.19500000 1.10500000 2.27000000 ;
-     RECT 2.33000000 0.73000000 2.47000000 2.27000000 ;
-     RECT 0.81500000 2.27000000 2.47000000 2.41000000 ;
-     RECT 0.81500000 2.41000000 1.10500000 2.48500000 ;
+     RECT 0.89000000 1.06000000 1.03000000 2.19500000 ;
+     RECT 0.81500000 2.19500000 1.10500000 2.48500000 ;
      RECT 4.65500000 0.44000000 4.94500000 0.73000000 ;
      RECT 4.73000000 0.73000000 4.87000000 2.19500000 ;
      RECT 4.65500000 2.19500000 4.94500000 2.48500000 ;
diff --git a/cells/lef/orig/XNOR2X1.lef b/cells/lef/orig/XNOR2X1.lef
index 9083352..92f9b34 100644
--- a/cells/lef/orig/XNOR2X1.lef
+++ b/cells/lef/orig/XNOR2X1.lef
@@ -49,15 +49,15 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
-        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
+        RECT 1.29500000 0.84500000 1.58500000 0.92000000 ;
+        RECT 2.73500000 0.84500000 3.02500000 0.92000000 ;
+        RECT 1.29500000 0.92000000 3.02500000 1.06000000 ;
+        RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
+        RECT 2.73500000 1.06000000 3.02500000 1.13500000 ;
         RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
         RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
-        RECT 1.29500000 1.78000000 1.58500000 1.85500000 ;
-        RECT 2.73500000 1.78000000 3.02500000 1.85500000 ;
-        RECT 1.29500000 1.85500000 3.02500000 1.99500000 ;
-        RECT 1.29500000 1.99500000 1.58500000 2.07000000 ;
-        RECT 2.73500000 1.99500000 3.02500000 2.07000000 ;
+        RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
+        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
     END
   END B
 
@@ -68,15 +68,17 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 5.61500000 0.84500000 5.90500000 1.13500000 ;
-        RECT 8.49500000 0.84500000 8.78500000 1.13500000 ;
+        RECT 5.61500000 0.84500000 5.90500000 0.92000000 ;
+        RECT 8.49500000 0.84500000 8.78500000 0.92000000 ;
+        RECT 5.21000000 0.92000000 8.78500000 1.06000000 ;
+        RECT 5.61500000 1.06000000 5.90500000 1.13500000 ;
+        RECT 8.49500000 1.06000000 8.78500000 1.13500000 ;
         RECT 8.57000000 1.13500000 8.71000000 1.78000000 ;
         RECT 4.17500000 1.78000000 4.46500000 1.85500000 ;
-        RECT 5.69000000 1.13500000 5.83000000 1.85500000 ;
-        RECT 8.49500000 1.78000000 8.78500000 1.85500000 ;
-        RECT 4.17500000 1.85500000 8.78500000 1.99500000 ;
+        RECT 5.21000000 1.06000000 5.35000000 1.85500000 ;
+        RECT 4.17500000 1.85500000 5.35000000 1.99500000 ;
         RECT 4.17500000 1.99500000 4.46500000 2.07000000 ;
-        RECT 8.49500000 1.99500000 8.78500000 2.07000000 ;
+        RECT 8.49500000 1.78000000 8.78500000 2.07000000 ;
     END
   END A
 
@@ -123,9 +125,8 @@
      RECT 1.27500000 1.76000000 1.60500000 2.09000000 ;
      RECT 2.71500000 1.76000000 3.04500000 2.09000000 ;
      RECT 4.15500000 1.76000000 4.48500000 2.09000000 ;
-     RECT 8.47500000 1.76000000 8.80500000 2.09000000 ;
      RECT 5.59500000 1.76000000 5.92500000 2.09000000 ;
-     RECT 5.67500000 2.09000000 5.84500000 2.42500000 ;
+     RECT 8.47500000 1.76000000 8.80500000 2.09000000 ;
      RECT 0.55500000 2.17500000 0.88500000 2.50500000 ;
      RECT 4.63500000 0.42000000 4.96500000 0.75000000 ;
      RECT 4.71500000 0.75000000 4.88500000 2.17500000 ;
@@ -174,9 +175,9 @@
      RECT 1.35500000 1.84000000 1.52500000 2.01000000 ;
      RECT 2.79500000 1.84000000 2.96500000 2.01000000 ;
      RECT 4.23500000 1.84000000 4.40500000 2.01000000 ;
+     RECT 5.67500000 1.84000000 5.84500000 2.01000000 ;
      RECT 8.55500000 1.84000000 8.72500000 2.01000000 ;
      RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
-     RECT 5.67500000 2.25500000 5.84500000 2.42500000 ;
      RECT 9.03500000 2.25500000 9.20500000 2.42500000 ;
      RECT 7.11500000 2.66000000 7.28500000 2.83000000 ;
      RECT 7.59500000 2.82000000 7.76500000 2.99000000 ;
@@ -207,34 +208,36 @@
      RECT 1.77500000 0.24000000 2.06500000 0.57000000 ;
      RECT 7.53500000 0.24000000 7.82500000 0.57000000 ;
      RECT 4.65500000 0.44000000 4.94500000 0.73000000 ;
-     RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
-     RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
+     RECT 1.29500000 0.84500000 1.58500000 0.92000000 ;
+     RECT 2.73500000 0.84500000 3.02500000 0.92000000 ;
+     RECT 1.29500000 0.92000000 3.02500000 1.06000000 ;
+     RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
+     RECT 2.73500000 1.06000000 3.02500000 1.13500000 ;
      RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
      RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
-     RECT 1.29500000 1.78000000 1.58500000 1.85500000 ;
-     RECT 2.73500000 1.78000000 3.02500000 1.85500000 ;
-     RECT 1.29500000 1.85500000 3.02500000 1.99500000 ;
-     RECT 1.29500000 1.99500000 1.58500000 2.07000000 ;
-     RECT 2.73500000 1.99500000 3.02500000 2.07000000 ;
-     RECT 5.61500000 0.84500000 5.90500000 1.13500000 ;
-     RECT 8.49500000 0.84500000 8.78500000 1.13500000 ;
+     RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
+     RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+     RECT 5.61500000 0.84500000 5.90500000 0.92000000 ;
+     RECT 8.49500000 0.84500000 8.78500000 0.92000000 ;
+     RECT 5.21000000 0.92000000 8.78500000 1.06000000 ;
+     RECT 5.61500000 1.06000000 5.90500000 1.13500000 ;
+     RECT 8.49500000 1.06000000 8.78500000 1.13500000 ;
      RECT 8.57000000 1.13500000 8.71000000 1.78000000 ;
      RECT 4.17500000 1.78000000 4.46500000 1.85500000 ;
-     RECT 5.69000000 1.13500000 5.83000000 1.85500000 ;
-     RECT 8.49500000 1.78000000 8.78500000 1.85500000 ;
-     RECT 4.17500000 1.85500000 8.78500000 1.99500000 ;
+     RECT 5.21000000 1.06000000 5.35000000 1.85500000 ;
+     RECT 4.17500000 1.85500000 5.35000000 1.99500000 ;
      RECT 4.17500000 1.99500000 4.46500000 2.07000000 ;
-     RECT 8.49500000 1.99500000 8.78500000 2.07000000 ;
+     RECT 8.49500000 1.78000000 8.78500000 2.07000000 ;
      RECT 8.97500000 0.44000000 9.26500000 0.73000000 ;
      RECT 4.17500000 0.84500000 4.46500000 0.92000000 ;
      RECT 3.77000000 0.92000000 4.46500000 1.06000000 ;
      RECT 4.17500000 1.06000000 4.46500000 1.13500000 ;
+     RECT 5.61500000 1.78000000 5.90500000 2.07000000 ;
      RECT 9.05000000 0.73000000 9.19000000 2.19500000 ;
      RECT 3.77000000 1.06000000 3.91000000 2.27000000 ;
-     RECT 5.61500000 2.19500000 5.90500000 2.27000000 ;
+     RECT 5.69000000 2.07000000 5.83000000 2.27000000 ;
      RECT 8.97500000 2.19500000 9.26500000 2.27000000 ;
      RECT 3.77000000 2.27000000 9.26500000 2.41000000 ;
-     RECT 5.61500000 2.41000000 5.90500000 2.48500000 ;
      RECT 8.97500000 2.41000000 9.26500000 2.48500000 ;
      RECT 0.57500000 0.44000000 0.86500000 0.73000000 ;
      RECT 0.65000000 0.73000000 0.79000000 2.19500000 ;
diff --git a/cells/lef/orig/XOR2X1.lef b/cells/lef/orig/XOR2X1.lef
new file mode 100644
index 0000000..3e0a263
--- /dev/null
+++ b/cells/lef/orig/XOR2X1.lef
@@ -0,0 +1,247 @@
+MACRO XOR2X1
+ CLASS CORE ;
+ FOREIGN XOR2X1 0 0 ;
+ SIZE 10.08 BY 3.33 ;
+ ORIGIN 0 0 ;
+ SYMMETRY X Y R90 ;
+ SITE unit ;
+  PIN VDD
+   DIRECTION INOUT ;
+   USE POWER ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 3.09000000 10.08000000 3.57000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 3.09000000 10.08000000 3.57000000 ;
+    END
+  END VDD
+
+  PIN GND
+   DIRECTION INOUT ;
+   USE POWER ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 -0.24000000 10.08000000 0.24000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 -0.24000000 10.08000000 0.24000000 ;
+    END
+  END GND
+
+  PIN Y
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 4.65500000 0.44000000 4.94500000 0.73000000 ;
+    END
+  END Y
+
+  PIN A
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
+        RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
+        RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
+        RECT 1.29500000 1.78000000 1.58500000 1.85500000 ;
+        RECT 4.25000000 1.13500000 4.39000000 1.85500000 ;
+        RECT 5.61500000 1.78000000 5.90500000 1.85500000 ;
+        RECT 1.29500000 1.85500000 5.90500000 1.99500000 ;
+        RECT 1.29500000 1.99500000 1.58500000 2.07000000 ;
+        RECT 5.61500000 1.99500000 5.90500000 2.07000000 ;
+    END
+  END A
+
+  PIN B
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
+        RECT 2.81000000 1.13500000 2.95000000 1.38500000 ;
+        RECT 2.73500000 1.38500000 3.02500000 1.67500000 ;
+    END
+  END B
+
+ OBS
+    LAYER polycont ;
+     RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
+     RECT 2.79500000 0.90500000 2.96500000 1.07500000 ;
+     RECT 4.23500000 0.90500000 4.40500000 1.07500000 ;
+     RECT 5.67500000 0.90500000 5.84500000 1.07500000 ;
+     RECT 7.11500000 0.90500000 7.28500000 1.07500000 ;
+     RECT 8.55500000 0.90500000 8.72500000 1.07500000 ;
+     RECT 1.35500000 1.84000000 1.52500000 2.01000000 ;
+     RECT 2.79500000 1.84000000 2.96500000 2.01000000 ;
+     RECT 4.23500000 1.84000000 4.40500000 2.01000000 ;
+     RECT 5.67500000 1.84000000 5.84500000 2.01000000 ;
+     RECT 7.11500000 1.84000000 7.28500000 2.01000000 ;
+     RECT 8.55500000 1.84000000 8.72500000 2.01000000 ;
+
+    LAYER pdiffc ;
+     RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
+     RECT 4.71500000 2.25500000 4.88500000 2.42500000 ;
+     RECT 9.03500000 2.25500000 9.20500000 2.42500000 ;
+     RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
+     RECT 7.59500000 2.82000000 7.76500000 2.99000000 ;
+
+    LAYER ndiffc ;
+     RECT 1.83500000 0.34000000 2.00500000 0.51000000 ;
+     RECT 7.59500000 0.34000000 7.76500000 0.51000000 ;
+     RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
+     RECT 9.03500000 0.50000000 9.20500000 0.67000000 ;
+
+    LAYER li1 ;
+     RECT 0.00000000 -0.24000000 10.08000000 0.24000000 ;
+     RECT 1.75500000 0.24000000 2.08500000 0.59000000 ;
+     RECT 7.51500000 0.24000000 7.84500000 0.59000000 ;
+     RECT 0.55500000 0.42000000 0.88500000 0.75000000 ;
+     RECT 8.95500000 0.42000000 9.28500000 0.75000000 ;
+     RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
+     RECT 2.71500000 0.82500000 3.04500000 1.15500000 ;
+     RECT 4.15500000 0.82500000 4.48500000 1.15500000 ;
+     RECT 5.59500000 0.82500000 5.92500000 1.15500000 ;
+     RECT 7.03500000 0.82500000 7.36500000 1.15500000 ;
+     RECT 1.27500000 1.76000000 1.60500000 2.09000000 ;
+     RECT 5.59500000 1.76000000 5.92500000 2.09000000 ;
+     RECT 7.03500000 1.76000000 7.36500000 2.09000000 ;
+     RECT 8.47500000 0.82500000 8.80500000 1.15500000 ;
+     RECT 8.55500000 1.15500000 8.72500000 1.76000000 ;
+     RECT 8.47500000 1.76000000 8.80500000 2.09000000 ;
+     RECT 4.15500000 1.76000000 4.48500000 2.09000000 ;
+     RECT 4.23500000 2.09000000 4.40500000 2.42500000 ;
+     RECT 0.55500000 2.17500000 0.88500000 2.50500000 ;
+     RECT 4.63500000 0.42000000 4.96500000 0.75000000 ;
+     RECT 4.71500000 0.75000000 4.88500000 2.17500000 ;
+     RECT 4.63500000 2.17500000 4.96500000 2.50500000 ;
+     RECT 8.95500000 2.17500000 9.28500000 2.50500000 ;
+     RECT 2.79500000 1.44500000 2.96500000 1.76000000 ;
+     RECT 2.71500000 1.76000000 3.04500000 2.09000000 ;
+     RECT 2.79500000 2.09000000 2.96500000 2.83000000 ;
+     RECT 1.75500000 2.74000000 2.08500000 3.09000000 ;
+     RECT 7.51500000 2.74000000 7.84500000 3.09000000 ;
+     RECT 0.00000000 3.09000000 10.08000000 3.57000000 ;
+
+    LAYER viali ;
+     RECT 0.15500000 -0.08500000 0.32500000 0.08500000 ;
+     RECT 0.63500000 -0.08500000 0.80500000 0.08500000 ;
+     RECT 1.11500000 -0.08500000 1.28500000 0.08500000 ;
+     RECT 1.59500000 -0.08500000 1.76500000 0.08500000 ;
+     RECT 2.07500000 -0.08500000 2.24500000 0.08500000 ;
+     RECT 2.55500000 -0.08500000 2.72500000 0.08500000 ;
+     RECT 3.03500000 -0.08500000 3.20500000 0.08500000 ;
+     RECT 3.51500000 -0.08500000 3.68500000 0.08500000 ;
+     RECT 3.99500000 -0.08500000 4.16500000 0.08500000 ;
+     RECT 4.47500000 -0.08500000 4.64500000 0.08500000 ;
+     RECT 4.95500000 -0.08500000 5.12500000 0.08500000 ;
+     RECT 5.43500000 -0.08500000 5.60500000 0.08500000 ;
+     RECT 5.91500000 -0.08500000 6.08500000 0.08500000 ;
+     RECT 6.39500000 -0.08500000 6.56500000 0.08500000 ;
+     RECT 6.87500000 -0.08500000 7.04500000 0.08500000 ;
+     RECT 7.35500000 -0.08500000 7.52500000 0.08500000 ;
+     RECT 7.83500000 -0.08500000 8.00500000 0.08500000 ;
+     RECT 8.31500000 -0.08500000 8.48500000 0.08500000 ;
+     RECT 8.79500000 -0.08500000 8.96500000 0.08500000 ;
+     RECT 9.27500000 -0.08500000 9.44500000 0.08500000 ;
+     RECT 9.75500000 -0.08500000 9.92500000 0.08500000 ;
+     RECT 1.83500000 0.34000000 2.00500000 0.51000000 ;
+     RECT 7.59500000 0.34000000 7.76500000 0.51000000 ;
+     RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
+     RECT 9.03500000 0.50000000 9.20500000 0.67000000 ;
+     RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
+     RECT 2.79500000 0.90500000 2.96500000 1.07500000 ;
+     RECT 4.23500000 0.90500000 4.40500000 1.07500000 ;
+     RECT 5.67500000 0.90500000 5.84500000 1.07500000 ;
+     RECT 7.11500000 0.90500000 7.28500000 1.07500000 ;
+     RECT 2.79500000 1.44500000 2.96500000 1.61500000 ;
+     RECT 1.35500000 1.84000000 1.52500000 2.01000000 ;
+     RECT 5.67500000 1.84000000 5.84500000 2.01000000 ;
+     RECT 7.11500000 1.84000000 7.28500000 2.01000000 ;
+     RECT 8.55500000 1.84000000 8.72500000 2.01000000 ;
+     RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
+     RECT 4.23500000 2.25500000 4.40500000 2.42500000 ;
+     RECT 9.03500000 2.25500000 9.20500000 2.42500000 ;
+     RECT 2.79500000 2.66000000 2.96500000 2.83000000 ;
+     RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
+     RECT 0.15500000 3.24500000 0.32500000 3.41500000 ;
+     RECT 0.63500000 3.24500000 0.80500000 3.41500000 ;
+     RECT 1.11500000 3.24500000 1.28500000 3.41500000 ;
+     RECT 1.59500000 3.24500000 1.76500000 3.41500000 ;
+     RECT 2.07500000 3.24500000 2.24500000 3.41500000 ;
+     RECT 2.55500000 3.24500000 2.72500000 3.41500000 ;
+     RECT 3.03500000 3.24500000 3.20500000 3.41500000 ;
+     RECT 3.51500000 3.24500000 3.68500000 3.41500000 ;
+     RECT 3.99500000 3.24500000 4.16500000 3.41500000 ;
+     RECT 4.47500000 3.24500000 4.64500000 3.41500000 ;
+     RECT 4.95500000 3.24500000 5.12500000 3.41500000 ;
+     RECT 5.43500000 3.24500000 5.60500000 3.41500000 ;
+     RECT 5.91500000 3.24500000 6.08500000 3.41500000 ;
+     RECT 6.39500000 3.24500000 6.56500000 3.41500000 ;
+     RECT 6.87500000 3.24500000 7.04500000 3.41500000 ;
+     RECT 7.35500000 3.24500000 7.52500000 3.41500000 ;
+     RECT 7.83500000 3.24500000 8.00500000 3.41500000 ;
+     RECT 8.31500000 3.24500000 8.48500000 3.41500000 ;
+     RECT 8.79500000 3.24500000 8.96500000 3.41500000 ;
+     RECT 9.27500000 3.24500000 9.44500000 3.41500000 ;
+     RECT 9.75500000 3.24500000 9.92500000 3.41500000 ;
+
+    LAYER met1 ;
+     RECT 0.00000000 -0.24000000 10.08000000 0.24000000 ;
+     RECT 1.77500000 0.24000000 2.06500000 0.57000000 ;
+     RECT 7.53500000 0.24000000 7.82500000 0.57000000 ;
+     RECT 4.65500000 0.44000000 4.94500000 0.73000000 ;
+     RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
+     RECT 2.81000000 1.13500000 2.95000000 1.38500000 ;
+     RECT 2.73500000 1.38500000 3.02500000 1.67500000 ;
+     RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
+     RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
+     RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
+     RECT 1.29500000 1.78000000 1.58500000 1.85500000 ;
+     RECT 4.25000000 1.13500000 4.39000000 1.85500000 ;
+     RECT 5.61500000 1.78000000 5.90500000 1.85500000 ;
+     RECT 1.29500000 1.85500000 5.90500000 1.99500000 ;
+     RECT 1.29500000 1.99500000 1.58500000 2.07000000 ;
+     RECT 5.61500000 1.99500000 5.90500000 2.07000000 ;
+     RECT 0.57500000 0.44000000 0.86500000 0.73000000 ;
+     RECT 5.61500000 0.84500000 5.90500000 0.92000000 ;
+     RECT 5.61500000 0.92000000 6.31000000 1.06000000 ;
+     RECT 5.61500000 1.06000000 5.90500000 1.13500000 ;
+     RECT 0.65000000 0.73000000 0.79000000 2.19500000 ;
+     RECT 0.57500000 2.19500000 0.86500000 2.27000000 ;
+     RECT 4.17500000 2.19500000 4.46500000 2.27000000 ;
+     RECT 6.17000000 1.06000000 6.31000000 2.27000000 ;
+     RECT 0.57500000 2.27000000 6.31000000 2.41000000 ;
+     RECT 0.57500000 2.41000000 0.86500000 2.48500000 ;
+     RECT 4.17500000 2.41000000 4.46500000 2.48500000 ;
+     RECT 8.97500000 0.44000000 9.26500000 0.73000000 ;
+     RECT 7.05500000 0.84500000 7.34500000 0.92000000 ;
+     RECT 9.05000000 0.73000000 9.19000000 0.92000000 ;
+     RECT 7.05500000 0.92000000 9.19000000 1.06000000 ;
+     RECT 7.05500000 1.06000000 7.34500000 1.13500000 ;
+     RECT 7.13000000 1.13500000 7.27000000 1.78000000 ;
+     RECT 7.05500000 1.78000000 7.34500000 2.07000000 ;
+     RECT 9.05000000 1.06000000 9.19000000 2.19500000 ;
+     RECT 8.97500000 2.19500000 9.26500000 2.48500000 ;
+     RECT 8.49500000 1.78000000 8.78500000 2.07000000 ;
+     RECT 2.73500000 2.60000000 3.02500000 2.67500000 ;
+     RECT 8.57000000 2.07000000 8.71000000 2.67500000 ;
+     RECT 2.73500000 2.67500000 8.71000000 2.81500000 ;
+     RECT 2.73500000 2.81500000 3.02500000 2.89000000 ;
+     RECT 1.77500000 2.76000000 2.06500000 3.09000000 ;
+     RECT 0.00000000 3.09000000 10.08000000 3.57000000 ;
+
+ END
+END XOR2X1
diff --git a/cells/lib/AND2X1.lib b/cells/lib/AND2X1.lib
index 9703219..494624e 100644
--- a/cells/lib/AND2X1.lib
+++ b/cells/lib/AND2X1.lib
@@ -35,7 +35,7 @@
     );
   }
   cell (AND2X1) {
-    area: 219456.0;
+    area: 877824.0;
     cell_leakage_power: 0.1173;
     pin (B) {
       direction: input;
diff --git a/cells/lib/AND2X2.lib b/cells/lib/AND2X2.lib
index 7e2fe1f..38bdaa3 100644
--- a/cells/lib/AND2X2.lib
+++ b/cells/lib/AND2X2.lib
@@ -35,7 +35,7 @@
     );
   }
   cell (AND2X2) {
-    area: 219456.0;
+    area: 877824.0;
     cell_leakage_power: 0.1173;
     pin (B) {
       direction: input;
diff --git a/cells/lib/AOI21X1.lib b/cells/lib/AOI21X1.lib
index b11e8e6..353609d 100644
--- a/cells/lib/AOI21X1.lib
+++ b/cells/lib/AOI21X1.lib
@@ -35,7 +35,7 @@
     );
   }
   cell (AOI21X1) {
-    area: 219456.0;
+    area: 877824.0;
     cell_leakage_power: 0.1173;
     pin (C) {
       direction: input;
diff --git a/cells/lib/AOI22X1.lib b/cells/lib/AOI22X1.lib
index 92d73ea..506a7d3 100644
--- a/cells/lib/AOI22X1.lib
+++ b/cells/lib/AOI22X1.lib
@@ -35,7 +35,7 @@
     );
   }
   cell (AOI22X1) {
-    area: 274320.0;
+    area: 1097280.0;
     cell_leakage_power: 0.1173;
     pin (D) {
       direction: input;
diff --git a/cells/lib/BUFX2.lib b/cells/lib/BUFX2.lib
index c942155..8bdbfb4 100644
--- a/cells/lib/BUFX2.lib
+++ b/cells/lib/BUFX2.lib
@@ -35,7 +35,7 @@
     );
   }
   cell (BUFX2) {
-    area: 164592.0;
+    area: 658368.0;
     cell_leakage_power: 0.1173;
     pin (A) {
       direction: input;
diff --git a/cells/lib/BUFX4.lib b/cells/lib/BUFX4.lib
index 59df0e6..c6d325f 100644
--- a/cells/lib/BUFX4.lib
+++ b/cells/lib/BUFX4.lib
@@ -35,7 +35,7 @@
     );
   }
   cell (BUFX4) {
-    area: 219456.0;
+    area: 877824.0;
     cell_leakage_power: 0.1173;
     pin (A) {
       direction: input;
diff --git a/cells/lib/CLKBUF1.lib b/cells/lib/CLKBUF1.lib
index 4b7e0ab..983eb75 100644
--- a/cells/lib/CLKBUF1.lib
+++ b/cells/lib/CLKBUF1.lib
@@ -35,7 +35,7 @@
     );
   }
   cell (CLKBUF1) {
-    area: 493776.0;
+    area: 1975104.0;
     cell_leakage_power: 0.1173;
     pin (A) {
       direction: input;
diff --git a/cells/lib/INV.lib b/cells/lib/INV.lib
index 9ec5982..fafb185 100644
--- a/cells/lib/INV.lib
+++ b/cells/lib/INV.lib
@@ -35,7 +35,7 @@
     );
   }
   cell (INV) {
-    area: 109728.0;
+    area: 438912.0;
     cell_leakage_power: 0.1173;
     pin (A) {
       direction: input;
diff --git a/cells/lib/INVX1.lib b/cells/lib/INVX1.lib
index 12e7a4d..ffd14e9 100644
--- a/cells/lib/INVX1.lib
+++ b/cells/lib/INVX1.lib
@@ -35,7 +35,7 @@
     );
   }
   cell (INVX1) {
-    area: 109728.0;
+    area: 438912.0;
     cell_leakage_power: 0.1173;
     pin (A) {
       direction: input;
diff --git a/cells/lib/INVX2.lib b/cells/lib/INVX2.lib
index 2da9522..c93098c 100644
--- a/cells/lib/INVX2.lib
+++ b/cells/lib/INVX2.lib
@@ -35,7 +35,7 @@
     );
   }
   cell (INVX2) {
-    area: 109728.0;
+    area: 438912.0;
     cell_leakage_power: 0.1173;
     pin (A) {
       direction: input;
diff --git a/cells/lib/INVX4.lib b/cells/lib/INVX4.lib
index 9a533d4..6b192af 100644
--- a/cells/lib/INVX4.lib
+++ b/cells/lib/INVX4.lib
@@ -35,7 +35,7 @@
     );
   }
   cell (INVX4) {
-    area: 164592.0;
+    area: 658368.0;
     cell_leakage_power: 0.1173;
     pin (A) {
       direction: input;
diff --git a/cells/lib/INVX8.lib b/cells/lib/INVX8.lib
index 62e1f00..f2ca68c 100644
--- a/cells/lib/INVX8.lib
+++ b/cells/lib/INVX8.lib
@@ -35,7 +35,7 @@
     );
   }
   cell (INVX8) {
-    area: 274320.0;
+    area: 1097280.0;
     cell_leakage_power: 0.1173;
     pin (A) {
       direction: input;
diff --git a/cells/lib/MUX2X1.lib b/cells/lib/MUX2X1.lib
index d8a0d96..8641f57 100644
--- a/cells/lib/MUX2X1.lib
+++ b/cells/lib/MUX2X1.lib
@@ -35,7 +35,7 @@
     );
   }
   cell (MUX2X1) {
-    area: 329184.0;
+    area: 1316736.0;
     cell_leakage_power: 0.1173;
     pin (S) {
       direction: input;
diff --git a/cells/lib/NAND2X1.lib b/cells/lib/NAND2X1.lib
index 159a940..671ea74 100644
--- a/cells/lib/NAND2X1.lib
+++ b/cells/lib/NAND2X1.lib
@@ -35,7 +35,7 @@
     );
   }
   cell (NAND2X1) {
-    area: 164592.0;
+    area: 658368.0;
     cell_leakage_power: 0.1173;
     pin (B) {
       direction: input;
diff --git a/cells/lib/NAND3X1.lib b/cells/lib/NAND3X1.lib
index 43f44c1..a0cf762 100644
--- a/cells/lib/NAND3X1.lib
+++ b/cells/lib/NAND3X1.lib
@@ -35,7 +35,7 @@
     );
   }
   cell (NAND3X1) {
-    area: 219456.0;
+    area: 877824.0;
     cell_leakage_power: 0.1173;
     pin (C) {
       direction: input;
diff --git a/cells/lib/OR2X1.lib b/cells/lib/OR2X1.lib
index 497c2fe..2944b5e 100644
--- a/cells/lib/OR2X1.lib
+++ b/cells/lib/OR2X1.lib
@@ -35,7 +35,7 @@
     );
   }
   cell (OR2X1) {
-    area: 219456.0;
+    area: 877824.0;
     cell_leakage_power: 0.1173;
     pin (B) {
       direction: input;
diff --git a/cells/lib/OR2X2.lib b/cells/lib/OR2X2.lib
index d5eccfb..a4f3e08 100644
--- a/cells/lib/OR2X2.lib
+++ b/cells/lib/OR2X2.lib
@@ -35,7 +35,7 @@
     );
   }
   cell (OR2X2) {
-    area: 219456.0;
+    area: 877824.0;
     cell_leakage_power: 0.1173;
     pin (B) {
       direction: input;
diff --git a/cells/lib/XNOR2X1.lib b/cells/lib/XNOR2X1.lib
index ac556dd..616e8d8 100644
--- a/cells/lib/XNOR2X1.lib
+++ b/cells/lib/XNOR2X1.lib
@@ -35,7 +35,7 @@
     );
   }
   cell (XNOR2X1) {
-    area: 384048.0;
+    area: 1536192.0;
     cell_leakage_power: 0.1173;
     pin (B) {
       direction: input;
diff --git a/cells/lib/XOR2X1.lib b/cells/lib/XOR2X1.lib
new file mode 100644
index 0000000..7bc0c59
--- /dev/null
+++ b/cells/lib/XOR2X1.lib
@@ -0,0 +1,186 @@
+library (ls05_stdcells) {
+  delay_model: table_lookup;
+  in_place_swap_mode: match_footprint;
+  time_unit: "1ns";
+  voltage_unit: "1V";
+  current_unit: "1uA";
+  pulling_resistance_unit: "1kohm";
+  leakage_power_unit: "1nW";
+  capacitive_load_unit (1.0, pf);
+  slew_upper_threshold_pct_rise: 80.0;
+  slew_lower_threshold_pct_rise: 20.0;
+  slew_upper_threshold_pct_fall: 80.0;
+  slew_lower_threshold_pct_fall: 20.0;
+  input_threshold_pct_rise: 50.0;
+  input_threshold_pct_fall: 50.0;
+  output_threshold_pct_rise: 50.0;
+  output_threshold_pct_fall: 50.0;
+  nom_process: 1.0;
+  nom_voltage: 5.0;
+  nom_temperature: 25.0;
+  default_operating_conditions: typical;
+  operating_conditions (typical) {
+    process: 1.0;
+    voltage: 5.0;
+    temperature: 25.0;
+  }
+  lu_table_template (delay_template_5x5) {
+    variable_1: total_output_net_capacitance;
+    variable_2: input_net_transition;
+    index_1 (
+      "1000.000000, 1001.000000, 1002.000000, 1003.000000, 1004.000000"
+    );
+    index_2 (
+      "1000.000000, 1001.000000, 1002.000000, 1003.000000, 1004.000000"
+    );
+  }
+  cell (XOR2X1) {
+    area: 1536192.0;
+    cell_leakage_power: 0.1173;
+    pin (B) {
+      direction: input;
+      rise_capacitance: 0.011125237855721299;
+      fall_capacitance: 0.013458368537199627;
+      capacitance: 0.012291803196460463;
+    }
+    pin (A) {
+      direction: input;
+      rise_capacitance: 0.005915560312833218;
+      fall_capacitance: 0.009103970632490159;
+      capacitance: 0.007509765472661688;
+    }
+    pin (Y) {
+      direction: output;
+      function: "!(!B&!A|B&A)";
+      function: "(!(A & B + !A & !B))";
+      timing () {
+        related_pin: "A";
+        timing_sense: non_unate;
+        cell_rise (delay_template_5x5) {
+          index_1 (
+            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
+          );
+          index_2 (
+            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
+          );
+          values (
+            "0.012892, 0.017884, 0.023582, 0.028581, 0.047039", \
+            "0.088020, 0.084498, 0.088176, 0.100267, 0.176997", \
+            "0.164777, 0.158599, 0.158811, 0.165507, 0.272027", \
+            "0.319197, 0.311031, 0.307896, 0.307904, 0.436456", \
+            "1.558585, 1.548160, 1.540528, 1.528710, 1.518515"
+          );
+        }
+        cell_fall (delay_template_5x5) {
+          index_1 (
+            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
+          );
+          index_2 (
+            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
+          );
+          values (
+            "0.016957, 0.021209, 0.026433, 0.031788, 0.049581", \
+            "0.105352, 0.101262, 0.101517, 0.109489, 0.189817", \
+            "0.199116, 0.192599, 0.189067, 0.189128, 0.294604", \
+            "0.387610, 0.379329, 0.372685, 0.364852, 0.472363", \
+            "1.898846, 1.888657, 1.878160, 1.859296, 1.755721"
+          );
+        }
+        rise_transition (delay_template_5x5) {
+          index_1 (
+            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
+          );
+          index_2 (
+            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
+          );
+          values (
+            "0.023649, 0.043194, 0.070971, 0.085067, 0.565950", \
+            "0.130727, 0.130960, 0.133759, 0.151712, 0.602446", \
+            "0.243440, 0.243431, 0.243448, 0.248631, 0.662387", \
+            "0.468772, 0.468795, 0.468785, 0.468785, 0.757475", \
+            "2.271774, 2.271788, 2.271788, 2.271786, 2.282763"
+          );
+        }
+        fall_transition (delay_template_5x5) {
+          index_1 (
+            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
+          );
+          index_2 (
+            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
+          );
+          values (
+            "0.028995, 0.032141, 0.047871, 0.084453, 0.560124", \
+            "0.155738, 0.155044, 0.155572, 0.170946, 0.631684", \
+            "0.286568, 0.286562, 0.286518, 0.289308, 0.710606", \
+            "0.548144, 0.548142, 0.548134, 0.548140, 0.843303", \
+            "2.640828, 2.640826, 2.640826, 2.640827, 2.646192"
+          );
+        }
+      }
+      timing () {
+        related_pin: "B";
+        timing_sense: non_unate;
+        cell_rise (delay_template_5x5) {
+          index_1 (
+            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
+          );
+          index_2 (
+            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
+          );
+          values (
+            "0.014892, 0.026246, 0.031838, 0.037204, 0.048590", \
+            "0.091734, 0.095678, 0.100730, 0.112148, 0.182368", \
+            "0.168923, 0.171200, 0.174309, 0.182497, 0.282866", \
+            "0.323721, 0.324777, 0.326200, 0.330900, 0.455028", \
+            "1.563456, 1.563165, 1.562411, 1.561608, 1.609279"
+          );
+        }
+        cell_fall (delay_template_5x5) {
+          index_1 (
+            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
+          );
+          index_2 (
+            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
+          );
+          values (
+            "0.024069, 0.032502, 0.038891, 0.047467, 0.087946", \
+            "0.115473, 0.118528, 0.123164, 0.134818, 0.246531", \
+            "0.209458, 0.210932, 0.213732, 0.222349, 0.363720", \
+            "0.398106, 0.398429, 0.399551, 0.404751, 0.555323", \
+            "1.909486, 1.908601, 1.907591, 1.907104, 1.962711"
+          );
+        }
+        rise_transition (delay_template_5x5) {
+          index_1 (
+            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
+          );
+          index_2 (
+            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
+          );
+          values (
+            "0.025121, 0.046358, 0.037829, 0.058746, 0.265684", \
+            "0.130823, 0.130739, 0.131644, 0.140015, 0.394131", \
+            "0.243421, 0.243395, 0.243335, 0.244847, 0.496071", \
+            "0.468767, 0.468755, 0.468745, 0.468743, 0.634781", \
+            "2.271778, 2.271763, 2.271765, 2.271761, 2.273117"
+          );
+        }
+        fall_transition (delay_template_5x5) {
+          index_1 (
+            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
+          );
+          index_2 (
+            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
+          );
+          values (
+            "0.031037, 0.031042, 0.038291, 0.059160, 0.254240", \
+            "0.155716, 0.155677, 0.155943, 0.162510, 0.429541", \
+            "0.286530, 0.286528, 0.286510, 0.286927, 0.538348", \
+            "0.548114, 0.548124, 0.548121, 0.548120, 0.703170", \
+            "2.640816, 2.640814, 2.640814, 2.640812, 2.640811"
+          );
+        }
+      }
+    }
+  }
+}
\ No newline at end of file
diff --git a/cells/lib/libresilicon.lib b/cells/lib/libresilicon.lib
index a9d1c9b..da471df 100644
--- a/cells/lib/libresilicon.lib
+++ b/cells/lib/libresilicon.lib
@@ -1 +1 @@
-library (ls05_stdcells) {  delay_model: table_lookup;  in_place_swap_mode: match_footprint;  time_unit: "1ns";  voltage_unit: "1V";  current_unit: "1uA";  pulling_resistance_unit: "1kohm";  leakage_power_unit: "1nW";  capacitive_load_unit (1.0, pf);  slew_upper_threshold_pct_rise: 80.0;  slew_lower_threshold_pct_rise: 20.0;  slew_upper_threshold_pct_fall: 80.0;  slew_lower_threshold_pct_fall: 20.0;  input_threshold_pct_rise: 50.0;  input_threshold_pct_fall: 50.0;  output_threshold_pct_rise: 50.0;  output_threshold_pct_fall: 50.0;  nom_process: 1.0;  nom_voltage: 5.0;  nom_temperature: 25.0;  default_operating_conditions: typical;  operating_conditions (typical) {    process: 1.0;    voltage: 5.0;    temperature: 25.0;  }  lu_table_template (delay_template_5x1) {    variable_1: input_net_transition;    index_1 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0"    );  }  lu_table_template (delay_template_5x5) {    variable_1: total_output_net_capacitance;    variable_2: input_net_transition;    index_1 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0"    );    index_2 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0"    );  }  lu_table_template (delay_template_5x6) {    variable_1: total_output_net_capacitance;    variable_2: input_net_transition;    index_1 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0"    );    index_2 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"    );  }  lu_table_template (delay_template_6x1) {    variable_1: input_net_transition;    index_1 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"    );  }  lu_table_template (delay_template_6x6) {    variable_1: total_output_net_capacitance;    variable_2: input_net_transition;    index_1 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"    );    index_2 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"    );  }  power_lut_template (energy_template_5x5) {    variable_1: total_output_net_capacitance;    variable_2: input_transition_time;    index_1 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0"    );    index_2 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0"    );  }  power_lut_template (energy_template_5x6) {    variable_1: total_output_net_capacitance;    variable_2: input_transition_time;    index_1 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0"    );    index_2 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"    );  }  power_lut_template (energy_template_6x6) {    variable_1: total_output_net_capacitance;    variable_2: input_transition_time;    index_1 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"    );    index_2 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"    );  }  lu_table_template (hold_template_3x5) {    variable_1: related_pin_transition;    variable_2: constrained_pin_transition;    index_1 (      "1000.0, 1001.0, 1002.0"    );    index_2 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0"    );  }  lu_table_template (hold_template_3x6) {    variable_1: related_pin_transition;    variable_2: constrained_pin_transition;    index_1 (      "1000.0, 1001.0, 1002.0"    );    index_2 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"    );  }  power_lut_template (passive_energy_template_5x1) {    variable_1: input_transition_time;    index_1 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0"    );  }  power_lut_template (passive_energy_template_6x1) {    variable_1: input_transition_time;    index_1 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"    );  }  lu_table_template (recovery_template_3x6) {    variable_1: related_pin_transition;    variable_2: constrained_pin_transition;    index_1 (      "1000.0, 1001.0, 1002.0"    );    index_2 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"    );  }  lu_table_template (recovery_template_6x6) {    variable_1: related_pin_transition;    variable_2: constrained_pin_transition;    index_1 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"    );    index_2 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"    );  }  lu_table_template (removal_template_3x6) {    variable_1: related_pin_transition;    variable_2: constrained_pin_transition;    index_1 (      "1000.0, 1001.0, 1002.0"    );    index_2 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"    );  }  lu_table_template (setup_template_3x5) {    variable_1: related_pin_transition;    variable_2: constrained_pin_transition;    index_1 (      "1000.0, 1001.0, 1002.0"    );    index_2 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0"    );  }  lu_table_template (setup_template_3x6) {    variable_1: related_pin_transition;    variable_2: constrained_pin_transition;    index_1 (      "1000.0, 1001.0, 1002.0"    );    index_2 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"    );  }  cell (AND2X1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 219456.0;    cell_leakage_power: 0.1173;    pin (B) {      direction: input;      rise_capacitance: 0.004935475891367477;      fall_capacitance: 0.007858406695085389;      capacitance: 0.006396941293226433;    }    pin (A) {      direction: input;      rise_capacitance: 0.004150891096654475;      fall_capacitance: 0.005776428708787616;      capacitance: 0.004963659902721045;    }    pin (Y) {      direction: output;      function: "(B&A)";      function: "(A & B)";      timing () {        related_pin: "A";        timing_sense: positive_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "-0.003054, 0.030498, 0.039878, 0.053343, 0.188749",             "0.048098, 0.064059, 0.074620, 0.093597, 0.252448",             "0.087865, 0.098559, 0.108152, 0.125156, 0.300811",             "0.172721, 0.177015, 0.184227, 0.196165, 0.394456",             "0.875756, 0.870760, 0.872299, 0.869455, 0.975392"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.015977, 0.018737, 0.019304, 0.016191, -0.074696",             "0.056135, 0.056445, 0.057308, 0.057768, -0.014818",             "0.099933, 0.098214, 0.096071, 0.094474, 0.031563",             "0.189088, 0.185938, 0.181261, 0.173387, 0.117548",             "0.905025, 0.900630, 0.893784, 0.878306, 0.755396"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.026432, 0.038218, 0.045398, 0.077143, 0.593792",             "0.080791, 0.094490, 0.092269, 0.111832, 0.588352",             "0.147163, 0.151582, 0.153943, 0.167618, 0.594475",             "0.287657, 0.288087, 0.288559, 0.294676, 0.639075",             "1.420873, 1.420869, 1.420872, 1.420876, 1.523193"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.017097, 0.032947, 0.054213, 0.094807, 0.609971",             "0.091168, 0.096623, 0.108594, 0.140442, 0.624323",             "0.176540, 0.177904, 0.183856, 0.205552, 0.674111",             "0.348626, 0.348716, 0.349898, 0.359158, 0.778703",             "1.726993, 1.726969, 1.726997, 1.726970, 1.840952"          );        }      }      timing () {        related_pin: "B";        timing_sense: positive_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "-0.002948, 0.031842, 0.043871, 0.058431, 0.170628",             "0.046736, 0.065667, 0.079697, 0.098261, 0.233471",             "0.087052, 0.099648, 0.114524, 0.132001, 0.286132",             "0.172376, 0.177352, 0.192051, 0.206645, 0.390972",             "0.875894, 0.869785, 0.881810, 0.887018, 1.014535"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.018316, 0.021069, 0.023194, 0.023536, -0.031337",             "0.058079, 0.058865, 0.060249, 0.060930, 0.021381",             "0.101524, 0.100223, 0.098824, 0.096634, 0.056583",             "0.190472, 0.187661, 0.183754, 0.176080, 0.122194",             "0.906272, 0.902147, 0.895946, 0.881308, 0.736220"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.023782, 0.069151, 0.034982, 0.054052, 0.449913",             "0.080000, 0.118312, 0.085490, 0.095978, 0.447397",             "0.146991, 0.152360, 0.150326, 0.156871, 0.457664",             "0.287629, 0.288180, 0.288056, 0.290376, 0.519847",             "1.420875, 1.420869, 1.420872, 1.420868, 1.491447"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.020252, 0.035538, 0.056873, 0.095129, 0.521070",             "0.091909, 0.097885, 0.110175, 0.140770, 0.556828",             "0.176533, 0.178340, 0.184385, 0.205074, 0.605254",             "0.348727, 0.348732, 0.349910, 0.357567, 0.705589",             "1.727017, 1.726977, 1.726979, 1.727007, 1.795626"          );        }      }    }  }  cell (AND2X2) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 219456.0;    cell_leakage_power: 0.1173;    pin (B) {      direction: input;      rise_capacitance: 0.004935475891367477;      fall_capacitance: 0.007858406695085389;      capacitance: 0.006396941293226433;    }    pin (A) {      direction: input;      rise_capacitance: 0.004150891096654475;      fall_capacitance: 0.005776428708787616;      capacitance: 0.004963659902721045;    }    pin (Y) {      direction: output;      function: "(B&A)";      function: "(A & B)";      timing () {        related_pin: "A";        timing_sense: positive_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "-0.003054, 0.030498, 0.039878, 0.053343, 0.188749",             "0.048098, 0.064059, 0.074620, 0.093597, 0.252448",             "0.087865, 0.098559, 0.108152, 0.125156, 0.300811",             "0.172721, 0.177015, 0.184227, 0.196165, 0.394456",             "0.875756, 0.870760, 0.872299, 0.869455, 0.975392"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.015977, 0.018737, 0.019304, 0.016191, -0.074696",             "0.056135, 0.056445, 0.057308, 0.057768, -0.014818",             "0.099933, 0.098214, 0.096071, 0.094474, 0.031563",             "0.189088, 0.185938, 0.181261, 0.173387, 0.117548",             "0.905025, 0.900630, 0.893784, 0.878306, 0.755396"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.026432, 0.038218, 0.045398, 0.077143, 0.593792",             "0.080791, 0.094490, 0.092269, 0.111832, 0.588352",             "0.147163, 0.151582, 0.153943, 0.167618, 0.594475",             "0.287657, 0.288087, 0.288559, 0.294676, 0.639075",             "1.420873, 1.420869, 1.420872, 1.420876, 1.523193"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.017097, 0.032947, 0.054213, 0.094807, 0.609971",             "0.091168, 0.096623, 0.108594, 0.140442, 0.624323",             "0.176540, 0.177904, 0.183856, 0.205552, 0.674111",             "0.348626, 0.348716, 0.349898, 0.359158, 0.778703",             "1.726993, 1.726969, 1.726997, 1.726970, 1.840952"          );        }      }      timing () {        related_pin: "B";        timing_sense: positive_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "-0.002948, 0.031842, 0.043871, 0.058431, 0.170628",             "0.046736, 0.065667, 0.079697, 0.098261, 0.233471",             "0.087052, 0.099648, 0.114524, 0.132001, 0.286132",             "0.172376, 0.177352, 0.192051, 0.206645, 0.390972",             "0.875894, 0.869785, 0.881810, 0.887018, 1.014535"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.018316, 0.021069, 0.023194, 0.023536, -0.031337",             "0.058079, 0.058865, 0.060249, 0.060930, 0.021381",             "0.101524, 0.100223, 0.098824, 0.096634, 0.056583",             "0.190472, 0.187661, 0.183754, 0.176080, 0.122194",             "0.906272, 0.902147, 0.895946, 0.881308, 0.736220"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.023782, 0.069151, 0.034982, 0.054052, 0.449913",             "0.080000, 0.118312, 0.085490, 0.095978, 0.447397",             "0.146991, 0.152360, 0.150326, 0.156871, 0.457664",             "0.287629, 0.288180, 0.288056, 0.290376, 0.519847",             "1.420875, 1.420869, 1.420872, 1.420868, 1.491447"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.020252, 0.035538, 0.056873, 0.095129, 0.521070",             "0.091909, 0.097885, 0.110175, 0.140770, 0.556828",             "0.176533, 0.178340, 0.184385, 0.205074, 0.605254",             "0.348727, 0.348732, 0.349910, 0.357567, 0.705589",             "1.727017, 1.726977, 1.726979, 1.727007, 1.795626"          );        }      }    }  }  cell (AOI21X1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 219456.0;    cell_leakage_power: 0.1173;    pin (C) {      direction: input;      rise_capacitance: 0.006296176741869404;      fall_capacitance: 0.006101450811807844;      capacitance: 0.006198813776838624;    }    pin (B) {      direction: input;      rise_capacitance: 0.004150897383251567;      fall_capacitance: 0.005762494885719812;      capacitance: 0.00495669613448569;    }    pin (A) {      direction: input;      rise_capacitance: 0.004935476111367993;      fall_capacitance: 0.007850019508283936;      capacitance: 0.006392747809825965;    }    pin (Y) {      direction: output;      function: "(!C&!B&!A|!C&B&!A|!C&!B&A)";      function: "((A & !B & !C + B & !A & !C + !A & !B & !C))";      timing () {        related_pin: "A";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.018081, 0.020447, 0.022456, 0.023296, -0.023076",             "0.095512, 0.095564, 0.097577, 0.105665, 0.139556",             "0.173079, 0.172613, 0.173245, 0.177966, 0.251687",             "0.328092, 0.327325, 0.326934, 0.328569, 0.431362",             "1.568078, 1.567023, 1.565399, 1.562764, 1.593146"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.011083, 0.027112, 0.034806, 0.046174, 0.138537",             "0.106126, 0.110980, 0.117817, 0.132662, 0.298423",             "0.200686, 0.203305, 0.207787, 0.219052, 0.408583",             "0.389684, 0.390741, 0.393128, 0.400447, 0.586557",             "1.901409, 1.900881, 1.900582, 1.901419, 1.980303"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.017400, 0.024998, 0.038610, 0.061076, 0.316134",             "0.127638, 0.127551, 0.128643, 0.138963, 0.448630",             "0.240290, 0.240260, 0.240283, 0.242298, 0.547010",             "0.465607, 0.465635, 0.465599, 0.465632, 0.673379",             "2.268621, 2.268618, 2.268620, 2.268621, 2.271276"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.029014, 0.032057, 0.039965, 0.063854, 0.320917",             "0.155270, 0.155388, 0.155812, 0.163213, 0.464067",             "0.286240, 0.286177, 0.286189, 0.286907, 0.549050",             "0.547857, 0.547835, 0.547859, 0.547862, 0.703410",             "2.640589, 2.640589, 2.640586, 2.640585, 2.640586"          );        }      }      timing () {        related_pin: "B";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.015335, 0.016945, 0.017387, 0.015057, -0.070130",             "0.093269, 0.093163, 0.094810, 0.101980, 0.105211",             "0.170827, 0.170332, 0.170780, 0.174845, 0.222749",             "0.325869, 0.325151, 0.324630, 0.325908, 0.409344",             "1.565863, 1.564927, 1.563288, 1.560589, 1.585799"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.013287, 0.024590, 0.032135, 0.044683, 0.169986",             "0.106631, 0.105383, 0.107181, 0.118863, 0.301183",             "0.201084, 0.196904, 0.194332, 0.196987, 0.392495",             "0.390038, 0.383879, 0.377817, 0.371491, 0.543659",             "1.901742, 1.893615, 1.883483, 1.864976, 1.785407"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.013635, 0.021335, 0.036352, 0.066782, 0.514064",             "0.122731, 0.122740, 0.123665, 0.133972, 0.500371",             "0.235316, 0.235334, 0.235297, 0.237378, 0.556421",             "0.460654, 0.460640, 0.460666, 0.460646, 0.664867",             "2.263652, 2.263652, 2.263651, 2.263650, 2.266535"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.029990, 0.038199, 0.056237, 0.095398, 0.544902",             "0.155321, 0.155296, 0.158206, 0.179362, 0.704360",             "0.286222, 0.286226, 0.286240, 0.291364, 0.780438",             "0.547837, 0.547857, 0.547852, 0.547862, 0.901566",             "2.640589, 2.640588, 2.640588, 2.640589, 2.647331"          );        }      }      timing () {        related_pin: "C";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.012884, 0.013824, 0.016369, 0.019083, 0.025408",             "0.085533, 0.079788, 0.082111, 0.094024, 0.172908",             "0.157410, 0.149628, 0.148170, 0.154670, 0.271254",             "0.300946, 0.291744, 0.286795, 0.285855, 0.427654",             "1.448498, 1.437802, 1.428280, 1.413900, 1.417542"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.005708, 0.008623, 0.010235, 0.012288, 0.017616",             "0.047043, 0.047780, 0.052874, 0.064024, 0.113032",             "0.091536, 0.089929, 0.090900, 0.100815, 0.179742",             "0.181015, 0.178070, 0.175614, 0.176901, 0.288000",             "0.897237, 0.893242, 0.888241, 0.878918, 0.902547"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.012755, 0.024831, 0.044968, 0.093110, 0.730524",             "0.115219, 0.115342, 0.119381, 0.140592, 0.704120",             "0.219879, 0.219898, 0.220189, 0.229051, 0.695466",             "0.429271, 0.429272, 0.429268, 0.429957, 0.760003",             "2.104581, 2.104581, 2.104580, 2.104582, 2.138119"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.013144, 0.039574, 0.064113, 0.105179, 0.740810",             "0.092532, 0.098951, 0.115649, 0.159781, 0.811024",             "0.178514, 0.180443, 0.190086, 0.223562, 0.880935",             "0.350931, 0.351086, 0.353728, 0.372580, 0.983884",             "1.729228, 1.729222, 1.729222, 1.729215, 1.983340"          );        }      }    }  }  cell (AOI22X1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 274320.0;    cell_leakage_power: 0.1173;    pin (D) {      direction: input;      rise_capacitance: 0.004150836637055694;      fall_capacitance: 4.293461827055451e-05;      capacitance: 0.0020968856276631243;    }    pin (C) {      direction: input;      rise_capacitance: 0.004935392181405116;      fall_capacitance: 0.004717183954380674;      capacitance: 0.004826288067892895;    }    pin (B) {      direction: input;      rise_capacitance: 0.004150898468773608;      fall_capacitance: 0.005752203124409789;      capacitance: 0.004951550796591699;    }    pin (A) {      direction: input;      rise_capacitance: 0.00493547941452175;      fall_capacitance: 0.007832228421315403;      capacitance: 0.006383853917918576;    }    pin (Y) {      direction: output;      function: "!(D&C&!B&!A|D&C&B&!A|!D&!C&B&A|D&!C&B&A|D&C&B&A|!D&C&B&A|D&C&!B&A)";      function: "(!(A & B & C & D + A & B & C & !D + A & B & D & !C + A & C & D & !B + B & C & D & !A + A & B & !C & !D + C & D & !A & !B))";      timing () {        related_pin: "A";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.022453, 0.024534, 0.027322, 0.029301, -0.013605",             "0.094099, 0.094146, 0.096422, 0.104923, 0.133468",             "0.165999, 0.165576, 0.166553, 0.171933, 0.239819",             "0.309709, 0.308987, 0.308926, 0.311303, 0.412228",             "1.459135, 1.458114, 1.456788, 1.454769, 1.495149"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.010762, 0.031215, 0.042613, 0.056720, 0.163173",             "0.106795, 0.114659, 0.123175, 0.139761, 0.315494",             "0.201577, 0.206563, 0.212378, 0.225460, 0.423829",             "0.390704, 0.393586, 0.396927, 0.405778, 0.599884",             "1.902537, 1.903178, 1.903203, 1.904622, 1.991405"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.023524, 0.029914, 0.043867, 0.071865, 0.348115",             "0.124790, 0.124832, 0.126119, 0.138292, 0.474155",             "0.228743, 0.228744, 0.228751, 0.231812, 0.561135",             "0.436738, 0.436734, 0.436738, 0.436740, 0.675654",             "2.100895, 2.100896, 2.100897, 2.100896, 2.108562"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.034663, 0.063510, 0.047967, 0.068994, 0.335936",             "0.166389, 0.166412, 0.166844, 0.173304, 0.460327",             "0.297251, 0.297251, 0.297255, 0.297868, 0.539773",             "0.558920, 0.558909, 0.558922, 0.558921, 0.702122",             "2.651676, 2.651678, 2.651676, 2.651675, 2.651676"          );        }      }      timing () {        related_pin: "B";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.019651, 0.021446, 0.022931, 0.021898, -0.058654",             "0.091977, 0.091918, 0.093938, 0.101438, 0.098787",             "0.163917, 0.163487, 0.164267, 0.169031, 0.210590",             "0.307654, 0.306986, 0.306812, 0.308826, 0.390145",             "1.457089, 1.456195, 1.454848, 1.452765, 1.487992"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.013313, 0.029492, 0.038920, 0.053701, 0.189828",             "0.107559, 0.109470, 0.112797, 0.125324, 0.314605",             "0.202143, 0.200386, 0.199276, 0.203456, 0.404946",             "0.391163, 0.386838, 0.381869, 0.377141, 0.555274",             "1.902923, 1.895945, 1.886158, 1.868337, 1.797664"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.019077, 0.026325, 0.041095, 0.072960, 0.515154",             "0.120223, 0.120250, 0.121709, 0.133832, 0.515903",             "0.224169, 0.224172, 0.224205, 0.227354, 0.569826",             "0.432139, 0.432141, 0.432149, 0.432153, 0.667848",             "2.096306, 2.096306, 2.096306, 2.096307, 2.104382"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.036269, 0.063193, 0.062392, 0.098967, 0.551553",             "0.166373, 0.166389, 0.169112, 0.187994, 0.688610",             "0.297276, 0.297267, 0.297275, 0.302013, 0.760566",             "0.558916, 0.558919, 0.558917, 0.558918, 0.890221",             "2.651678, 2.651678, 2.651674, 2.651677, 2.657773"          );        }      }      timing () {        related_pin: "C";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.020200, 0.018794, 0.020910, 0.023798, 0.017569",             "0.092119, 0.084321, 0.084972, 0.095024, 0.157181",             "0.163930, 0.154431, 0.151294, 0.155481, 0.252498",             "0.307422, 0.296784, 0.290296, 0.286804, 0.407284",             "1.454937, 1.443187, 1.432682, 1.416494, 1.394586"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.010498, 0.021541, 0.028604, 0.036531, 0.082739",             "0.101264, 0.104773, 0.111902, 0.126711, 0.261658",             "0.195526, 0.196677, 0.201528, 0.213170, 0.380207",             "0.384366, 0.383767, 0.386473, 0.394329, 0.568488",             "1.895957, 1.893533, 1.893309, 1.894383, 1.975065"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.020633, 0.030682, 0.050793, 0.085135, 0.465687",             "0.123409, 0.123499, 0.127912, 0.152623, 0.625796",             "0.228067, 0.228069, 0.228437, 0.238660, 0.715340",             "0.437443, 0.437449, 0.437446, 0.438286, 0.825117",             "2.112769, 2.112769, 2.112771, 2.112769, 2.154781"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.021627, 0.033850, 0.033202, 0.057903, 0.432542",             "0.146054, 0.146118, 0.146677, 0.153711, 0.456404",             "0.276800, 0.276784, 0.276786, 0.277558, 0.525056",             "0.538347, 0.538333, 0.538346, 0.538344, 0.682865",             "2.630986, 2.630987, 2.630989, 2.630987, 2.630987"          );        }      }      timing () {        related_pin: "D";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.016935, 0.015243, 0.015695, 0.014740, -0.033455",             "0.089882, 0.081949, 0.082234, 0.090924, 0.115190",             "0.161756, 0.152189, 0.148795, 0.152107, 0.216277",             "0.305276, 0.294641, 0.288008, 0.283956, 0.379732",             "1.452819, 1.441160, 1.430652, 1.414354, 1.384946"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.011131, 0.019163, 0.024855, 0.033370, 0.110590",             "0.101703, 0.099111, 0.101250, 0.112517, 0.253820",             "0.195929, 0.190278, 0.188100, 0.190853, 0.353274",             "0.384754, 0.376936, 0.371227, 0.365324, 0.516649",             "1.896340, 1.886290, 1.876220, 1.858031, 1.777651"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.016198, 0.026696, 0.047157, 0.087412, 0.629442",             "0.118843, 0.118871, 0.123371, 0.147773, 0.655892",             "0.223461, 0.223424, 0.223842, 0.234191, 0.716081",             "0.432839, 0.432831, 0.432841, 0.433715, 0.813736",             "2.108153, 2.108150, 2.108150, 2.108152, 2.151140"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.019318, 0.037477, 0.046391, 0.085342, 0.625357",             "0.146062, 0.146061, 0.148782, 0.168097, 0.675212",             "0.276795, 0.276788, 0.276812, 0.281783, 0.738328",             "0.538338, 0.538332, 0.538332, 0.538345, 0.865002",             "2.630987, 2.630990, 2.630986, 2.630986, 2.638001"          );        }      }    }  }  cell (BUFX2) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 164592.0;    cell_leakage_power: 0.1173;    pin (A) {      direction: input;      rise_capacitance: 0.006189356217773286;      fall_capacitance: 0.008913012740210141;      capacitance: 0.007551184478991714;    }    pin (Y) {      direction: output;      function: "!(!A)";      function: "(A)";      timing () {        related_pin: "A";        timing_sense: positive_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "-0.003161, 0.018284, 0.022862, 0.029597, 0.082449",             "0.045168, 0.050118, 0.057399, 0.071712, 0.153721",             "0.086116, 0.085817, 0.089463, 0.102695, 0.199215",             "0.172383, 0.166439, 0.164531, 0.169815, 0.284515",             "0.876891, 0.864252, 0.852323, 0.833869, 0.853010"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.014482, 0.018379, 0.020768, 0.022068, -0.009140",             "0.054683, 0.055959, 0.059876, 0.069706, 0.071632",             "0.098664, 0.097948, 0.098411, 0.105829, 0.136458",             "0.187943, 0.185797, 0.183424, 0.183072, 0.249186",             "0.903989, 0.900540, 0.895789, 0.885878, 0.887209"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.021141, 0.053490, 0.059672, 0.113073, 0.840389",             "0.077202, 0.091911, 0.106094, 0.141454, 0.832516",             "0.145621, 0.149491, 0.160179, 0.190218, 0.830936",             "0.287250, 0.287270, 0.289142, 0.305563, 0.867895",             "1.420515, 1.420519, 1.420516, 1.420515, 1.614647"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.015821, 0.031534, 0.054604, 0.109725, 0.838134",             "0.090618, 0.095897, 0.108850, 0.147026, 0.841931",             "0.176061, 0.177617, 0.184255, 0.210648, 0.851578",             "0.348673, 0.348740, 0.350198, 0.363180, 0.905512",             "1.726970, 1.726967, 1.726971, 1.726970, 1.912266"          );        }      }    }  }  cell (BUFX4) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 219456.0;    cell_leakage_power: 0.1173;    pin (A) {      direction: input;      rise_capacitance: 0.006190154742284263;      fall_capacitance: 0.008890580111169952;      capacitance: 0.007540367426727108;    }    pin (Y) {      direction: output;      function: "!(!A)";      function: "(A)";      timing () {        related_pin: "A";        timing_sense: positive_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "-0.003332, 0.021756, 0.028208, 0.035969, 0.093993",             "0.026181, 0.039174, 0.048485, 0.060878, 0.137999",             "0.045221, 0.053837, 0.062262, 0.078031, 0.166608",             "0.086091, 0.087685, 0.092767, 0.107223, 0.211923",             "0.435684, 0.421572, 0.413289, 0.404913, 0.530577"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.019917, 0.023712, 0.027202, 0.030685, 0.008146",             "0.039940, 0.042849, 0.048226, 0.055685, 0.049883",             "0.059858, 0.061386, 0.065377, 0.075941, 0.084686",             "0.102963, 0.102628, 0.103617, 0.111160, 0.147406",             "0.459869, 0.457168, 0.453471, 0.446561, 0.530833"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.022521, 0.061092, 0.098545, 0.118668, 0.841214",             "0.047803, 0.081523, 0.116519, 0.130463, 0.837645",             "0.078588, 0.106772, 0.139897, 0.152839, 0.833203",             "0.146398, 0.156268, 0.169785, 0.200500, 0.833117",             "0.712599, 0.712588, 0.712577, 0.712845, 1.089880"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.022169, 0.034922, 0.057456, 0.109434, 0.837145",             "0.053315, 0.062209, 0.079539, 0.123803, 0.839403",             "0.093114, 0.098044, 0.110960, 0.148338, 0.840752",             "0.177240, 0.178652, 0.185453, 0.211899, 0.851340",             "0.865991, 0.865992, 0.865993, 0.866799, 1.209225"          );        }      }    }  }  cell (CLKBUF1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 493776.0;    cell_leakage_power: 0.1173;    pin (A) {      direction: input;      rise_capacitance: 0.012377692547513634;      fall_capacitance: 0.014507744176093367;      capacitance: 0.0134427183618035;    }    pin (Y) {      direction: output;      function: "!(!A)";      function: "(A)";      timing () {        related_pin: "A";        timing_sense: positive_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "-0.003460, 0.039905, 0.046929, 0.057149, 0.129195",             "0.039219, 0.054860, 0.064114, 0.078186, 0.157207",             "0.055285, 0.068102, 0.077098, 0.093315, 0.177192",             "0.092471, 0.100229, 0.107093, 0.121807, 0.216231",             "0.435605, 0.429264, 0.424902, 0.423004, 0.538823"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.032185, 0.040159, 0.044451, 0.047986, 0.023388",             "0.050450, 0.056824, 0.062828, 0.071275, 0.053156",             "0.068299, 0.073963, 0.079184, 0.090175, 0.079028",             "0.109143, 0.112555, 0.116061, 0.124195, 0.130603",             "0.463189, 0.462100, 0.460697, 0.458229, 0.520719"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.038133, 0.073853, 0.108060, 0.106379, 0.742329",             "0.060385, 0.095859, 0.130135, 0.118818, 0.738152",             "0.087750, 0.120648, 0.154819, 0.142636, 0.732318",             "0.148631, 0.165728, 0.177042, 0.190178, 0.740928",             "0.712222, 0.712217, 0.712215, 0.712236, 0.974750"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.042002, 0.068064, 0.055378, 0.096450, 0.738499",             "0.070257, 0.097122, 0.081847, 0.113407, 0.740126",             "0.100976, 0.109877, 0.115079, 0.140310, 0.740118",             "0.178532, 0.181261, 0.187084, 0.204804, 0.747643",             "0.865667, 0.865654, 0.865705, 0.865803, 1.087674"          );        }      }    }  }  cell (HAX1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 2289268.0;    cell_leakage_power: 0.1173;    pin (B) {      direction: input;    }    pin (A) {      direction: input;    }    pin (YS) {      direction: output;      function: "!(!B&!A|B&A)";    }    pin (YC) {      direction: output;      function: "(B&A)";    }  }  cell (INV) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 109728.0;    cell_leakage_power: 0.1173;    pin (A) {      direction: input;      rise_capacitance: 0.006188556324394764;      fall_capacitance: 0.008930247677472391;      capacitance: 0.007559402000933578;    }    pin (Y) {      direction: output;      function: "!(A)";      function: "(!A)";      timing () {        related_pin: "A";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.005045, 0.004409, 0.003488, -0.000307, -0.065884",             "0.045060, 0.042762, 0.047513, 0.054699, 0.040967",             "0.088722, 0.082033, 0.082140, 0.091178, 0.111791",             "0.176767, 0.166715, 0.160456, 0.160380, 0.224564",             "0.882682, 0.869493, 0.854103, 0.828028, 0.824714"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.005563, 0.008580, 0.012595, 0.019184, 0.090037",             "0.046837, 0.047773, 0.053764, 0.068471, 0.181014",             "0.091353, 0.089965, 0.091587, 0.103620, 0.243501",             "0.180850, 0.178100, 0.176154, 0.179192, 0.343968",             "0.897064, 0.893202, 0.888379, 0.879811, 0.928891"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.008037, 0.029159, 0.057520, 0.115796, 0.870209",             "0.074565, 0.079799, 0.096343, 0.138761, 0.864852",             "0.145329, 0.146192, 0.155787, 0.188759, 0.863750",             "0.286862, 0.286915, 0.288453, 0.307678, 0.903487",             "1.420162, 1.420160, 1.420161, 1.420161, 1.674200"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.008767, 0.030412, 0.056701, 0.115566, 0.870158",             "0.089918, 0.095810, 0.111953, 0.155870, 0.877226",             "0.175658, 0.177628, 0.186680, 0.219666, 0.900539",             "0.348403, 0.348491, 0.350746, 0.368988, 0.971736",             "1.726613, 1.726603, 1.726598, 1.726608, 1.975691"          );        }      }    }  }  cell (INVX1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 109728.0;    cell_leakage_power: 0.1173;    pin (A) {      direction: input;      rise_capacitance: 0.006188556324394764;      fall_capacitance: 0.008930247677472391;      capacitance: 0.007559402000933578;    }    pin (Y) {      direction: output;      function: "!(A)";      function: "(!A)";      timing () {        related_pin: "A";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.005045, 0.004409, 0.003488, -0.000307, -0.065884",             "0.045060, 0.042762, 0.047513, 0.054699, 0.040967",             "0.088722, 0.082033, 0.082140, 0.091178, 0.111791",             "0.176767, 0.166715, 0.160456, 0.160380, 0.224564",             "0.882682, 0.869493, 0.854103, 0.828028, 0.824714"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.005563, 0.008580, 0.012595, 0.019184, 0.090037",             "0.046837, 0.047773, 0.053764, 0.068471, 0.181014",             "0.091353, 0.089965, 0.091587, 0.103620, 0.243501",             "0.180850, 0.178100, 0.176154, 0.179192, 0.343968",             "0.897064, 0.893202, 0.888379, 0.879811, 0.928891"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.008037, 0.029159, 0.057520, 0.115796, 0.870209",             "0.074565, 0.079799, 0.096343, 0.138761, 0.864852",             "0.145329, 0.146192, 0.155787, 0.188759, 0.863750",             "0.286862, 0.286915, 0.288453, 0.307678, 0.903487",             "1.420162, 1.420160, 1.420161, 1.420161, 1.674200"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.008767, 0.030412, 0.056701, 0.115566, 0.870158",             "0.089918, 0.095810, 0.111953, 0.155870, 0.877226",             "0.175658, 0.177628, 0.186680, 0.219666, 0.900539",             "0.348403, 0.348491, 0.350746, 0.368988, 0.971736",             "1.726613, 1.726603, 1.726598, 1.726608, 1.975691"          );        }      }    }  }  cell (INVX2) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 109728.0;    cell_leakage_power: 0.1173;    pin (A) {      direction: input;      rise_capacitance: 0.006188556324394764;      fall_capacitance: 0.008930247677472391;      capacitance: 0.007559402000933578;    }    pin (Y) {      direction: output;      function: "!(A)";      function: "(!A)";      timing () {        related_pin: "A";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.005045, 0.004409, 0.003488, -0.000307, -0.065884",             "0.045060, 0.042762, 0.047513, 0.054699, 0.040967",             "0.088722, 0.082033, 0.082140, 0.091178, 0.111791",             "0.176767, 0.166715, 0.160456, 0.160380, 0.224564",             "0.882682, 0.869493, 0.854103, 0.828028, 0.824714"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.005563, 0.008580, 0.012595, 0.019184, 0.090037",             "0.046837, 0.047773, 0.053764, 0.068471, 0.181014",             "0.091353, 0.089965, 0.091587, 0.103620, 0.243501",             "0.180850, 0.178100, 0.176154, 0.179192, 0.343968",             "0.897064, 0.893202, 0.888379, 0.879811, 0.928891"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.008037, 0.029159, 0.057520, 0.115796, 0.870209",             "0.074565, 0.079799, 0.096343, 0.138761, 0.864852",             "0.145329, 0.146192, 0.155787, 0.188759, 0.863750",             "0.286862, 0.286915, 0.288453, 0.307678, 0.903487",             "1.420162, 1.420160, 1.420161, 1.420161, 1.674200"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.008767, 0.030412, 0.056701, 0.115566, 0.870158",             "0.089918, 0.095810, 0.111953, 0.155870, 0.877226",             "0.175658, 0.177628, 0.186680, 0.219666, 0.900539",             "0.348403, 0.348491, 0.350746, 0.368988, 0.971736",             "1.726613, 1.726603, 1.726598, 1.726608, 1.975691"          );        }      }    }  }  cell (INVX4) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 164592.0;    cell_leakage_power: 0.1173;    pin (A) {      direction: input;      rise_capacitance: 0.012376891490235522;      fall_capacitance: 0.014525173100391225;      capacitance: 0.013451032295313373;    }    pin (Y) {      direction: output;      function: "!(A)";      function: "(!A)";      timing () {        related_pin: "A";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.004836, 0.003911, 0.003113, -0.000947, -0.066781",             "0.023782, 0.025438, 0.029154, 0.032024, -0.003570",             "0.045059, 0.042825, 0.047513, 0.054773, 0.040967",             "0.088711, 0.082075, 0.082140, 0.091166, 0.111791",             "0.441430, 0.429084, 0.416141, 0.399464, 0.483388"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.005423, 0.008343, 0.012279, 0.018588, 0.089288",             "0.025056, 0.028778, 0.035903, 0.047954, 0.142358",             "0.046837, 0.047773, 0.053764, 0.068471, 0.181014",             "0.091353, 0.089965, 0.091587, 0.103620, 0.243501",             "0.449471, 0.445891, 0.441675, 0.435947, 0.579373"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.007775, 0.029000, 0.057625, 0.115801, 0.870234",             "0.039447, 0.049978, 0.071107, 0.121251, 0.867453",             "0.074397, 0.079871, 0.096343, 0.138754, 0.864852",             "0.145174, 0.146264, 0.155787, 0.188826, 0.863750",             "0.711874, 0.711865, 0.711868, 0.712356, 1.131446"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.008278, 0.030236, 0.056581, 0.115515, 0.870125",             "0.047212, 0.057977, 0.079852, 0.130476, 0.873241",             "0.089918, 0.095810, 0.111953, 0.155870, 0.877226",             "0.175658, 0.177628, 0.186680, 0.219666, 0.900539",             "0.865308, 0.865247, 0.865250, 0.866773, 1.291412"          );        }      }    }  }  cell (INVX8) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 274320.0;    cell_leakage_power: 0.1173;    pin (A) {      direction: input;      rise_capacitance: 0.02475357794277478;      fall_capacitance: 0.025715030488090873;      capacitance: 0.025234304215432823;    }    pin (Y) {      direction: output;      function: "!(A)";      function: "(!A)";      timing () {        related_pin: "A";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.004711, 0.003669, 0.002920, -0.001273, -0.067235",             "0.013476, 0.016314, 0.018100, 0.018126, -0.031065",             "0.023686, 0.025560, 0.029154, 0.032104, -0.003570",             "0.045002, 0.042834, 0.047470, 0.054715, 0.040967",             "0.220836, 0.210041, 0.201832, 0.197811, 0.273718"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.005356, 0.008225, 0.012119, 0.018287, 0.088886",             "0.014445, 0.019534, 0.025707, 0.035382, 0.118985",             "0.025056, 0.028778, 0.035903, 0.047954, 0.142358",             "0.046837, 0.047773, 0.053764, 0.068471, 0.181014",             "0.225616, 0.222601, 0.219861, 0.220213, 0.388011"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.007647, 0.028925, 0.057669, 0.115805, 0.870247",             "0.022139, 0.037257, 0.061628, 0.115441, 0.868805",             "0.039229, 0.050143, 0.071107, 0.121043, 0.867453",             "0.074441, 0.080027, 0.096405, 0.138670, 0.864852",             "0.357732, 0.357697, 0.358023, 0.371638, 0.931800"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.008160, 0.030148, 0.056531, 0.115506, 0.870109",             "0.026793, 0.041830, 0.067077, 0.120590, 0.871621",             "0.047212, 0.057977, 0.079852, 0.130476, 0.873241",             "0.089918, 0.095810, 0.111953, 0.155870, 0.877226",             "0.434491, 0.434491, 0.435448, 0.448752, 1.014657"          );        }      }    }  }  cell (MUX2X1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 329184.0;    cell_leakage_power: 0.1173;    pin (S) {      direction: input;      rise_capacitance: 0.010338610799344835;      fall_capacitance: 0.008212780453515003;      capacitance: 0.009275695626429919;    }    pin (B) {      direction: input;      rise_capacitance: 0.006397490498320098;      fall_capacitance: 0.008895353965965845;      capacitance: 0.007646422232142972;    }    pin (A) {      direction: input;      rise_capacitance: 0.004937389414015676;      fall_capacitance: 0.007864001795670731;      capacitance: 0.006400695604843204;    }    pin (Y) {      direction: output;      function: "!(!S&B&!A|!S&B&A|S&B&A|S&!B&A)";      function: "(!(A & B & S + A & B & !S + A & S & !B + B & !A & !S))";      timing () {        related_pin: "A";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.019428, 0.021747, 0.023821, 0.024885, -0.020070",             "0.096776, 0.096705, 0.098699, 0.106638, 0.141139",             "0.174325, 0.173758, 0.174373, 0.179031, 0.252974",             "0.329331, 0.328462, 0.328043, 0.329638, 0.432416",             "1.569307, 1.568155, 1.566435, 1.563733, 1.594086"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.015958, 0.027807, 0.035343, 0.047135, 0.140744",             "0.109318, 0.113175, 0.119175, 0.133278, 0.299017",             "0.203682, 0.205651, 0.209577, 0.220207, 0.408863",             "0.392584, 0.393181, 0.395219, 0.402088, 0.586689",             "1.904228, 1.903421, 1.903075, 1.903731, 1.981518"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.020411, 0.026763, 0.039961, 0.063425, 0.317670",             "0.130948, 0.130915, 0.131768, 0.141947, 0.451197",             "0.243567, 0.243583, 0.243517, 0.245528, 0.549507",             "0.468902, 0.468912, 0.468912, 0.468919, 0.675777",             "2.271917, 2.271914, 2.271917, 2.271916, 2.274560"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.034547, 0.032700, 0.040748, 0.064546, 0.323227",             "0.155499, 0.155537, 0.155799, 0.162945, 0.464800",             "0.286354, 0.286330, 0.286313, 0.286918, 0.548668",             "0.547917, 0.547919, 0.547900, 0.547926, 0.702513",             "2.640604, 2.640603, 2.640602, 2.640603, 2.640599"          );        }      }      timing () {        related_pin: "B";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.012479, 0.020519, 0.023592, 0.024838, -0.020037",             "0.088439, 0.091403, 0.095223, 0.104973, 0.140988",             "0.165879, 0.167485, 0.169565, 0.175932, 0.252738",             "0.320839, 0.321506, 0.322081, 0.325051, 0.431811",             "1.560766, 1.560490, 1.559111, 1.556910, 1.590657"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.023985, 0.029348, 0.035865, 0.047430, 0.140831",             "0.115535, 0.117784, 0.122066, 0.134594, 0.299174",             "0.209718, 0.210748, 0.213291, 0.222435, 0.409049",             "0.398509, 0.398634, 0.399621, 0.405195, 0.587049",             "1.910075, 1.909263, 1.908276, 1.908150, 1.983766"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.021856, 0.028909, 0.040295, 0.063869, 0.317858",             "0.130661, 0.130662, 0.132045, 0.142857, 0.451367",             "0.243245, 0.243252, 0.243275, 0.245652, 0.549740",             "0.468595, 0.468585, 0.468603, 0.468582, 0.676414",             "2.271590, 2.271590, 2.271589, 2.271591, 2.274367"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.026595, 0.030491, 0.040269, 0.064145, 0.322768",             "0.155850, 0.155839, 0.155924, 0.162605, 0.464668",             "0.286633, 0.286644, 0.286657, 0.287110, 0.548624",             "0.548248, 0.548238, 0.548248, 0.548232, 0.702345",             "2.641009, 2.640987, 2.640985, 2.640985, 2.640985"          );        }      }      timing () {        related_pin: "S";        timing_sense: non_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.015477, 0.019632, 0.023785, 0.028539, 0.047003",             "0.089791, 0.086977, 0.089938, 0.101079, 0.177000",             "0.166627, 0.161655, 0.161408, 0.167180, 0.272033",             "0.321166, 0.314571, 0.311301, 0.310607, 0.436604",             "1.560695, 1.552272, 1.545023, 1.533295, 1.520465"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.009379, 0.017143, 0.022831, 0.029415, 0.049506",             "0.098224, 0.096461, 0.098086, 0.107381, 0.189678",             "0.191790, 0.187334, 0.185018, 0.186251, 0.294384",             "0.380119, 0.373656, 0.367998, 0.361115, 0.471759",             "1.891175, 1.882501, 1.872694, 1.854265, 1.753057"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.025135, 0.032734, 0.048051, 0.084704, 0.566326",             "0.130733, 0.130708, 0.132826, 0.150233, 0.602446",             "0.243422, 0.243393, 0.243371, 0.247979, 0.662237",             "0.468752, 0.468761, 0.468758, 0.468739, 0.756824",             "2.271751, 2.271754, 2.271754, 2.271752, 2.282476"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.022469, 0.035382, 0.052960, 0.089711, 0.571861",             "0.155713, 0.155428, 0.156540, 0.173483, 0.639442",             "0.286482, 0.286497, 0.286481, 0.290082, 0.712770",             "0.548075, 0.548076, 0.548073, 0.548087, 0.844708",             "2.640769, 2.640767, 2.640766, 2.640768, 2.646447"          );        }      }    }  }  cell (NAND2X1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 164592.0;    cell_leakage_power: 0.1173;    pin (B) {      direction: input;      rise_capacitance: 0.004150889506161318;      fall_capacitance: 0.0057806089303857715;      capacitance: 0.004965749218273544;    }    pin (A) {      direction: input;      rise_capacitance: 0.004935475394936947;      fall_capacitance: 0.007870695939137575;      capacitance: 0.0064030856670372616;    }    pin (Y) {      direction: output;      function: "!(B&A)";      function: "(!A & B)";      timing () {        related_pin: "A";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.007196, 0.007595, 0.006535, 0.002335, -0.081701",             "0.048131, 0.045109, 0.049226, 0.055554, 0.023149",             "0.091843, 0.084555, 0.083952, 0.092035, 0.093853",             "0.179911, 0.169368, 0.162474, 0.161292, 0.207503",             "0.885821, 0.872458, 0.856675, 0.829540, 0.814241"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.015633, 0.021476, 0.028398, 0.039896, 0.146774",             "0.107818, 0.110541, 0.116624, 0.131991, 0.322868",             "0.202142, 0.203338, 0.207611, 0.219924, 0.436789",             "0.391020, 0.391118, 0.393477, 0.402003, 0.616285",             "1.902651, 1.901546, 1.901261, 1.902664, 2.012825"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.012945, 0.032109, 0.051696, 0.088446, 0.524049",             "0.079676, 0.085046, 0.101926, 0.145349, 0.674950",             "0.150526, 0.151440, 0.161506, 0.195645, 0.761149",             "0.292156, 0.292210, 0.293910, 0.314078, 0.887525",             "1.425456, 1.425453, 1.425463, 1.425463, 1.693531"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.013964, 0.019082, 0.028092, 0.057082, 0.488461",             "0.142119, 0.142058, 0.142068, 0.146714, 0.440570",             "0.272785, 0.272844, 0.272830, 0.273049, 0.465710",             "0.534379, 0.534395, 0.534370, 0.534368, 0.637728",             "2.627044, 2.627042, 2.627042, 2.627043, 2.627043"          );        }      }      timing () {        related_pin: "B";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.005849, 0.004862, 0.001953, -0.005765, -0.126919",             "0.046431, 0.043395, 0.046993, 0.051015, -0.016988",             "0.090143, 0.082837, 0.081976, 0.088941, 0.057037",             "0.178220, 0.167700, 0.160608, 0.158752, 0.176347",             "0.884156, 0.870837, 0.855034, 0.827713, 0.802365"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.013792, 0.018689, 0.025506, 0.038065, 0.175360",             "0.107725, 0.103637, 0.104869, 0.117440, 0.315940",             "0.202285, 0.196217, 0.193422, 0.197331, 0.412055",             "0.391293, 0.383864, 0.377831, 0.373134, 0.567831",             "1.903042, 1.894202, 1.884122, 1.866559, 1.824766"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.009695, 0.029176, 0.049614, 0.090169, 0.630637",             "0.076701, 0.082090, 0.098427, 0.140823, 0.690595",             "0.147420, 0.148384, 0.158014, 0.191352, 0.764094",             "0.289054, 0.289045, 0.290759, 0.310455, 0.877521",             "1.422334, 1.422325, 1.422328, 1.422326, 1.682986"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.014142, 0.022429, 0.038545, 0.077748, 0.619421",             "0.142113, 0.142115, 0.143140, 0.157535, 0.605736",             "0.272824, 0.272791, 0.272803, 0.275498, 0.636002",             "0.534396, 0.534363, 0.534379, 0.534395, 0.781620",             "2.627039, 2.627044, 2.627041, 2.627039, 2.630177"          );        }      }    }  }  cell (NAND3X1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 219456.0;    cell_leakage_power: 0.1173;    pin (C) {      direction: input;      rise_capacitance: 0.004149650005143659;      fall_capacitance: 0.005781505198438881;      capacitance: 0.00496557760179127;    }    pin (B) {      direction: input;      rise_capacitance: 0.004830629997798454;      fall_capacitance: 0.0065460190151835455;      capacitance: 0.005688324506490999;    }    pin (A) {      direction: input;      rise_capacitance: 0.0049353598856550955;      fall_capacitance: 0.007870869195042688;      capacitance: 0.006403114540348892;    }    pin (Y) {      direction: output;      function: "!(C&B&A)";      function: "(!A & B & C)";      timing () {        related_pin: "A";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.008972, 0.009457, 0.008503, 0.002962, -0.100701",             "0.051333, 0.047529, 0.050994, 0.056259, 0.000383",             "0.095086, 0.087278, 0.086059, 0.093123, 0.071594",             "0.183200, 0.172294, 0.164894, 0.162676, 0.188303",             "0.889127, 0.875625, 0.859595, 0.831781, 0.805945"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.020769, 0.029603, 0.037436, 0.051718, 0.185550",             "0.137563, 0.140846, 0.146094, 0.159442, 0.367674",             "0.257454, 0.258396, 0.261172, 0.270635, 0.491854",             "0.497675, 0.496765, 0.496908, 0.501401, 0.695984",             "2.420799, 2.417810, 2.414180, 2.409069, 2.461911"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.017292, 0.035367, 0.056139, 0.094266, 0.548119",             "0.084992, 0.090373, 0.107178, 0.150243, 0.683940",             "0.155780, 0.156840, 0.166974, 0.201316, 0.764246",             "0.297431, 0.297423, 0.299270, 0.320137, 0.888634",             "1.430747, 1.430744, 1.430744, 1.430744, 1.704785"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.023922, 0.025750, 0.032068, 0.055931, 0.495161",             "0.188089, 0.188153, 0.188154, 0.189888, 0.453757",             "0.355339, 0.355334, 0.355344, 0.355344, 0.505262",             "0.689777, 0.689789, 0.689794, 0.689787, 0.761388",             "3.365704, 3.365704, 3.365703, 3.365700, 3.365703"          );        }      }      timing () {        related_pin: "B";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.008334, 0.007999, 0.005426, -0.001872, -0.134533",             "0.049592, 0.045886, 0.049021, 0.052517, -0.029801",             "0.093307, 0.085588, 0.084148, 0.090357, 0.043619",             "0.181419, 0.170558, 0.163034, 0.160347, 0.164016",             "0.887312, 0.873890, 0.857871, 0.829951, 0.796345"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.023592, 0.029466, 0.038594, 0.055239, 0.219385",             "0.141155, 0.143057, 0.148603, 0.163867, 0.404481",             "0.261171, 0.261449, 0.264802, 0.276119, 0.527468",             "0.501476, 0.500497, 0.501691, 0.508419, 0.732132",             "2.424678, 2.422318, 2.420551, 2.419097, 2.507900"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.014708, 0.032973, 0.052387, 0.088064, 0.507153",             "0.081875, 0.087345, 0.103349, 0.145759, 0.652137",             "0.152726, 0.153620, 0.163460, 0.196949, 0.738027",             "0.294293, 0.294378, 0.296116, 0.316174, 0.868979",             "1.427621, 1.427628, 1.427634, 1.427631, 1.694351"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.023614, 0.026398, 0.032949, 0.053238, 0.454307",             "0.188147, 0.188117, 0.188099, 0.189875, 0.415502",             "0.355311, 0.355293, 0.355317, 0.355295, 0.485465",             "0.689798, 0.689798, 0.689789, 0.689787, 0.751303",             "3.365699, 3.365700, 3.365702, 3.365700, 3.365698"          );        }      }      timing () {        related_pin: "C";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.006743, 0.005507, 0.001409, -0.008755, -0.170135",             "0.047762, 0.044106, 0.046936, 0.048789, -0.060209",             "0.091478, 0.083801, 0.082253, 0.087681, 0.016317",             "0.179569, 0.168817, 0.161183, 0.158074, 0.141274",             "0.885505, 0.872150, 0.856133, 0.828109, 0.787687"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.021221, 0.026912, 0.036046, 0.053704, 0.240197",             "0.140988, 0.137908, 0.140081, 0.153521, 0.407328",             "0.261329, 0.256442, 0.255023, 0.261001, 0.520047",             "0.501821, 0.495706, 0.491228, 0.489434, 0.706541",             "2.425190, 2.417843, 2.409583, 2.395522, 2.391247"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.011465, 0.029918, 0.048625, 0.083915, 0.522973",             "0.078783, 0.083779, 0.099962, 0.141527, 0.642500",             "0.149540, 0.150478, 0.160020, 0.192902, 0.728158",             "0.291212, 0.291252, 0.292980, 0.312574, 0.856649",             "1.424500, 1.424495, 1.424506, 1.424500, 1.685213"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.023566, 0.027391, 0.036715, 0.061844, 0.502475",             "0.188148, 0.188141, 0.188149, 0.192359, 0.487219",             "0.355298, 0.355308, 0.355319, 0.355322, 0.560090",             "0.689793, 0.689798, 0.689798, 0.689793, 0.809696",             "3.365702, 3.365700, 3.365703, 3.365699, 3.365703"          );        }      }    }  }  cell (NOR2X1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 164592.0;    cell_leakage_power: 0.1173;    pin (B) {      direction: input;    }    pin (A) {      direction: input;    }    pin (Y) {      direction: output;      function: "(!B&!A)";    }  }  cell (NOR3X1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 2823984.0;    cell_leakage_power: 0.1173;    pin (C) {      direction: input;    }    pin (B) {      direction: input;    }    pin (A) {      direction: input;    }    pin (Y) {      direction: output;      function: "(!C&!B&!A)";    }  }  cell (OAI21X1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 219456.0;    cell_leakage_power: 0.1173;    pin (C) {      direction: input;    }    pin (B) {      direction: input;    }    pin (A) {      direction: input;    }    pin (Y) {      direction: output;      function: "!(C&B&!A|C&B&A|C&!B&A)";    }  }  cell (OAI22X1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 1660737.0;    cell_leakage_power: 0.1173;    pin (D) {      direction: input;    }    pin (C) {      direction: input;    }    pin (B) {      direction: input;    }    pin (A) {      direction: input;    }    pin (Y) {      direction: output;      function: "(!D&!C&!B&!A|D&!C&!B&!A|D&C&!B&!A|!D&C&!B&!A|!D&!C&B&!A|!D&!C&B&A|!D&!C&!B&A)";    }  }  cell (OR2X1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 219456.0;    cell_leakage_power: 0.1173;    pin (B) {      direction: input;      rise_capacitance: 0.006299305363616857;      fall_capacitance: 0.008885220124112183;      capacitance: 0.007592262743864521;    }    pin (A) {      direction: input;      rise_capacitance: 0.006309610190379141;      fall_capacitance: 0.00630283867340493;      capacitance: 0.006306224431892035;    }    pin (Y) {      direction: output;      function: "!(!B&!A)";      function: "(!!A & !B)";      timing () {        related_pin: "A";        timing_sense: positive_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "-0.002786, -0.022732, 0.019161, 0.019580, -0.011410",             "0.041854, 0.043329, 0.051603, 0.059323, 0.062560",             "0.084916, 0.078410, 0.082038, 0.088448, 0.103720",             "0.172611, 0.158216, 0.154751, 0.153103, 0.172991",             "0.878301, 0.855095, 0.838016, 0.810227, 0.720418"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.028540, 0.031368, 0.036819, 0.045426, 0.100228",             "0.069115, 0.070143, 0.075842, 0.091793, 0.184877",             "0.111955, 0.111797, 0.115439, 0.127845, 0.254311",             "0.200493, 0.199357, 0.201189, 0.207941, 0.374505",             "0.915994, 0.913985, 0.914073, 0.914386, 1.007881"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.013392, 0.051401, 0.087406, 0.152742, 0.687675",             "0.075475, 0.097421, 0.130787, 0.191718, 0.688979",             "0.145593, 0.155613, 0.179062, 0.217295, 0.718675",             "0.287207, 0.287428, 0.292736, 0.315169, 0.792432",             "1.420518, 1.420518, 1.420514, 1.420518, 1.582675"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.024927, 0.029452, 0.042786, 0.080200, 0.663641",             "0.093953, 0.096473, 0.103565, 0.127433, 0.668426",             "0.177647, 0.178545, 0.181992, 0.198197, 0.680919",             "0.349306, 0.349321, 0.350007, 0.357523, 0.740411",             "1.727348, 1.727346, 1.727366, 1.727370, 1.864145"          );        }      }      timing () {        related_pin: "B";        timing_sense: positive_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "-0.002737, 0.015129, 0.026339, 0.031155, 0.057827",             "0.042995, 0.049240, 0.058421, 0.069922, 0.132870",             "0.085418, 0.083324, 0.088199, 0.097150, 0.172762",             "0.172559, 0.161472, 0.159668, 0.160671, 0.230240",             "0.877741, 0.855521, 0.839844, 0.814300, 0.732001"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.029469, 0.033740, 0.039244, 0.045782, 0.049818",             "0.070126, 0.072893, 0.078115, 0.092691, 0.135288",             "0.112911, 0.114897, 0.118672, 0.129875, 0.209498",             "0.201393, 0.202758, 0.205335, 0.211918, 0.341264",             "0.916880, 0.917687, 0.919165, 0.921192, 1.006897"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.016092, 0.057562, 0.095169, 0.162177, 0.699235",             "0.076858, 0.103458, 0.137895, 0.200949, 0.702148",             "0.145825, 0.159732, 0.185528, 0.227910, 0.724008",             "0.287314, 0.288184, 0.294861, 0.320599, 0.788394",             "1.420530, 1.420534, 1.420537, 1.420539, 1.574668"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.024627, 0.027679, 0.036375, 0.067524, 0.609658",             "0.094505, 0.095669, 0.100243, 0.118924, 0.616317",             "0.177929, 0.178313, 0.180338, 0.192868, 0.629773",             "0.349160, 0.349206, 0.349675, 0.355201, 0.694984",             "1.727366, 1.727352, 1.727345, 1.727367, 1.855198"          );        }      }    }  }  cell (OR2X2) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 219456.0;    cell_leakage_power: 0.1173;    pin (B) {      direction: input;      rise_capacitance: 0.006299305363616857;      fall_capacitance: 0.008885220124112183;      capacitance: 0.007592262743864521;    }    pin (A) {      direction: input;      rise_capacitance: 0.006309610190379141;      fall_capacitance: 0.00630283867340493;      capacitance: 0.006306224431892035;    }    pin (Y) {      direction: output;      function: "!(!B&!A)";      function: "(!!A & !B)";      timing () {        related_pin: "A";        timing_sense: positive_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "-0.002786, -0.022732, 0.019161, 0.019580, -0.011410",             "0.041854, 0.043329, 0.051603, 0.059323, 0.062560",             "0.084916, 0.078410, 0.082038, 0.088448, 0.103720",             "0.172611, 0.158216, 0.154751, 0.153103, 0.172991",             "0.878301, 0.855095, 0.838016, 0.810227, 0.720418"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.028540, 0.031368, 0.036819, 0.045426, 0.100228",             "0.069115, 0.070143, 0.075842, 0.091793, 0.184877",             "0.111955, 0.111797, 0.115439, 0.127845, 0.254311",             "0.200493, 0.199357, 0.201189, 0.207941, 0.374505",             "0.915994, 0.913985, 0.914073, 0.914386, 1.007881"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.013392, 0.051401, 0.087406, 0.152742, 0.687675",             "0.075475, 0.097421, 0.130787, 0.191718, 0.688979",             "0.145593, 0.155613, 0.179062, 0.217295, 0.718675",             "0.287207, 0.287428, 0.292736, 0.315169, 0.792432",             "1.420518, 1.420518, 1.420514, 1.420518, 1.582675"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.024927, 0.029452, 0.042786, 0.080200, 0.663641",             "0.093953, 0.096473, 0.103565, 0.127433, 0.668426",             "0.177647, 0.178545, 0.181992, 0.198197, 0.680919",             "0.349306, 0.349321, 0.350007, 0.357523, 0.740411",             "1.727348, 1.727346, 1.727366, 1.727370, 1.864145"          );        }      }      timing () {        related_pin: "B";        timing_sense: positive_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "-0.002737, 0.015129, 0.026339, 0.031155, 0.057827",             "0.042995, 0.049240, 0.058421, 0.069922, 0.132870",             "0.085418, 0.083324, 0.088199, 0.097150, 0.172762",             "0.172559, 0.161472, 0.159668, 0.160671, 0.230240",             "0.877741, 0.855521, 0.839844, 0.814300, 0.732001"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.029469, 0.033740, 0.039244, 0.045782, 0.049818",             "0.070126, 0.072893, 0.078115, 0.092691, 0.135288",             "0.112911, 0.114897, 0.118672, 0.129875, 0.209498",             "0.201393, 0.202758, 0.205335, 0.211918, 0.341264",             "0.916880, 0.917687, 0.919165, 0.921192, 1.006897"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.016092, 0.057562, 0.095169, 0.162177, 0.699235",             "0.076858, 0.103458, 0.137895, 0.200949, 0.702148",             "0.145825, 0.159732, 0.185528, 0.227910, 0.724008",             "0.287314, 0.288184, 0.294861, 0.320599, 0.788394",             "1.420530, 1.420534, 1.420537, 1.420539, 1.574668"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.024627, 0.027679, 0.036375, 0.067524, 0.609658",             "0.094505, 0.095669, 0.100243, 0.118924, 0.616317",             "0.177929, 0.178313, 0.180338, 0.192868, 0.629773",             "0.349160, 0.349206, 0.349675, 0.355201, 0.694984",             "1.727366, 1.727352, 1.727345, 1.727367, 1.855198"          );        }      }    }  }  cell (XNOR2X1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 384048.0;    cell_leakage_power: 0.1173;    pin (B) {      direction: input;      rise_capacitance: 0.01258592702529086;      fall_capacitance: 0.01450190121076146;      capacitance: 0.01354391411802616;    }    pin (A) {      direction: input;      rise_capacitance: 0.012735641153553287;      fall_capacitance: 0.011631625278500075;      capacitance: 0.012183633216026682;    }    pin (Y) {      direction: output;      function: "!(B&!A|!B&A)";      function: "(!(A & !B + B & !A))";      timing () {        related_pin: "A";        timing_sense: non_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.013989, 0.018024, 0.023608, 0.028544, 0.046990",             "0.086886, 0.083890, 0.087944, 0.100115, 0.176994",             "0.163666, 0.158058, 0.158583, 0.165414, 0.272018",             "0.318190, 0.310552, 0.307716, 0.307846, 0.436394",             "1.557671, 1.547810, 1.540413, 1.528732, 1.518482"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.013397, 0.018391, 0.023707, 0.029700, 0.049560",             "0.104554, 0.099267, 0.099516, 0.107893, 0.189692",             "0.198104, 0.190587, 0.187032, 0.187249, 0.294404",             "0.386428, 0.377203, 0.370471, 0.362665, 0.471845",             "1.897500, 1.886363, 1.875729, 1.856653, 1.754002"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.023920, 0.038475, 0.061455, 0.084755, 0.566336",             "0.130811, 0.130539, 0.133792, 0.151736, 0.602473",             "0.243429, 0.243459, 0.243317, 0.248917, 0.662479",             "0.468797, 0.468798, 0.468793, 0.468774, 0.757658",             "2.271785, 2.271788, 2.271788, 2.271786, 2.282952"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.025980, 0.034386, 0.051179, 0.088206, 0.570375",             "0.155775, 0.156006, 0.156492, 0.172986, 0.639449",             "0.286528, 0.286545, 0.286577, 0.289826, 0.712632",             "0.548141, 0.548132, 0.548123, 0.548137, 0.844311",             "2.640825, 2.640828, 2.640826, 2.640825, 2.646410"          );        }      }      timing () {        related_pin: "B";        timing_sense: non_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.016690, 0.026445, 0.031880, 0.037261, 0.048616",             "0.091051, 0.095514, 0.100621, 0.112158, 0.182377",             "0.168213, 0.171079, 0.174250, 0.182514, 0.282866",             "0.322976, 0.324677, 0.326168, 0.330961, 0.454972",             "1.562706, 1.563167, 1.562488, 1.561803, 1.609286"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.026885, 0.032811, 0.038875, 0.047403, 0.087933",             "0.117282, 0.120145, 0.124314, 0.135271, 0.246516",             "0.211168, 0.212784, 0.215279, 0.223230, 0.363714",             "0.399743, 0.400411, 0.401407, 0.406048, 0.555385",             "1.911052, 1.910726, 1.909802, 1.909023, 1.963658"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.024789, 0.028839, 0.037807, 0.058878, 0.265656",             "0.130769, 0.130753, 0.131666, 0.140183, 0.394222",             "0.243431, 0.243415, 0.243392, 0.244961, 0.496125",             "0.468744, 0.468748, 0.468759, 0.468730, 0.635129",             "2.271767, 2.271764, 2.271765, 2.271763, 2.273192"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.028716, 0.030099, 0.037985, 0.059222, 0.254230",             "0.155712, 0.155759, 0.155806, 0.162226, 0.429522",             "0.286550, 0.286491, 0.286518, 0.286872, 0.538319",             "0.548133, 0.548105, 0.548127, 0.548107, 0.702960",             "2.640815, 2.640815, 2.640812, 2.640812, 2.640812"          );        }      }    }  }  cell (XOR2X1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 384048.0;    cell_leakage_power: 0.1173;    pin (B) {      direction: input;    }    pin (A) {      direction: input;    }    pin (Y) {      direction: output;      function: "!(!B&!A|B&A)";    }  }}
\ No newline at end of file
+library (ls05_stdcells) {  delay_model: table_lookup;  in_place_swap_mode: match_footprint;  time_unit: "1ns";  voltage_unit: "1V";  current_unit: "1uA";  pulling_resistance_unit: "1kohm";  leakage_power_unit: "1nW";  capacitive_load_unit (1.0, pf);  slew_upper_threshold_pct_rise: 80.0;  slew_lower_threshold_pct_rise: 20.0;  slew_upper_threshold_pct_fall: 80.0;  slew_lower_threshold_pct_fall: 20.0;  input_threshold_pct_rise: 50.0;  input_threshold_pct_fall: 50.0;  output_threshold_pct_rise: 50.0;  output_threshold_pct_fall: 50.0;  nom_process: 1.0;  nom_voltage: 5.0;  nom_temperature: 25.0;  default_operating_conditions: typical;  operating_conditions (typical) {    process: 1.0;    voltage: 5.0;    temperature: 25.0;  }  lu_table_template (delay_template_5x1) {    variable_1: input_net_transition;    index_1 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0"    );  }  lu_table_template (delay_template_5x5) {    variable_1: total_output_net_capacitance;    variable_2: input_net_transition;    index_1 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0"    );    index_2 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0"    );  }  lu_table_template (delay_template_5x6) {    variable_1: total_output_net_capacitance;    variable_2: input_net_transition;    index_1 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0"    );    index_2 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"    );  }  lu_table_template (delay_template_6x1) {    variable_1: input_net_transition;    index_1 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"    );  }  lu_table_template (delay_template_6x6) {    variable_1: total_output_net_capacitance;    variable_2: input_net_transition;    index_1 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"    );    index_2 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"    );  }  power_lut_template (energy_template_5x5) {    variable_1: total_output_net_capacitance;    variable_2: input_transition_time;    index_1 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0"    );    index_2 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0"    );  }  power_lut_template (energy_template_5x6) {    variable_1: total_output_net_capacitance;    variable_2: input_transition_time;    index_1 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0"    );    index_2 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"    );  }  power_lut_template (energy_template_6x6) {    variable_1: total_output_net_capacitance;    variable_2: input_transition_time;    index_1 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"    );    index_2 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"    );  }  lu_table_template (hold_template_3x5) {    variable_1: related_pin_transition;    variable_2: constrained_pin_transition;    index_1 (      "1000.0, 1001.0, 1002.0"    );    index_2 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0"    );  }  lu_table_template (hold_template_3x6) {    variable_1: related_pin_transition;    variable_2: constrained_pin_transition;    index_1 (      "1000.0, 1001.0, 1002.0"    );    index_2 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"    );  }  power_lut_template (passive_energy_template_5x1) {    variable_1: input_transition_time;    index_1 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0"    );  }  power_lut_template (passive_energy_template_6x1) {    variable_1: input_transition_time;    index_1 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"    );  }  lu_table_template (recovery_template_3x6) {    variable_1: related_pin_transition;    variable_2: constrained_pin_transition;    index_1 (      "1000.0, 1001.0, 1002.0"    );    index_2 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"    );  }  lu_table_template (recovery_template_6x6) {    variable_1: related_pin_transition;    variable_2: constrained_pin_transition;    index_1 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"    );    index_2 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"    );  }  lu_table_template (removal_template_3x6) {    variable_1: related_pin_transition;    variable_2: constrained_pin_transition;    index_1 (      "1000.0, 1001.0, 1002.0"    );    index_2 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"    );  }  lu_table_template (setup_template_3x5) {    variable_1: related_pin_transition;    variable_2: constrained_pin_transition;    index_1 (      "1000.0, 1001.0, 1002.0"    );    index_2 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0"    );  }  lu_table_template (setup_template_3x6) {    variable_1: related_pin_transition;    variable_2: constrained_pin_transition;    index_1 (      "1000.0, 1001.0, 1002.0"    );    index_2 (      "1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"    );  }  cell (AND2X1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 877824.0;    cell_leakage_power: 0.1173;    pin (B) {      direction: input;      rise_capacitance: 0.004935475891367477;      fall_capacitance: 0.007858406695085389;      capacitance: 0.006396941293226433;    }    pin (A) {      direction: input;      rise_capacitance: 0.004150891096654475;      fall_capacitance: 0.005776428708787616;      capacitance: 0.004963659902721045;    }    pin (Y) {      direction: output;      function: "(B&A)";      function: "(A & B)";      timing () {        related_pin: "A";        timing_sense: positive_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "-0.003054, 0.030498, 0.039878, 0.053343, 0.188749",             "0.048098, 0.064059, 0.074620, 0.093597, 0.252448",             "0.087865, 0.098559, 0.108152, 0.125156, 0.300811",             "0.172721, 0.177015, 0.184227, 0.196165, 0.394456",             "0.875756, 0.870760, 0.872299, 0.869455, 0.975392"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.015977, 0.018737, 0.019304, 0.016191, -0.074696",             "0.056135, 0.056445, 0.057308, 0.057768, -0.014818",             "0.099933, 0.098214, 0.096071, 0.094474, 0.031563",             "0.189088, 0.185938, 0.181261, 0.173387, 0.117548",             "0.905025, 0.900630, 0.893784, 0.878306, 0.755396"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.026432, 0.038218, 0.045398, 0.077143, 0.593792",             "0.080791, 0.094490, 0.092269, 0.111832, 0.588352",             "0.147163, 0.151582, 0.153943, 0.167618, 0.594475",             "0.287657, 0.288087, 0.288559, 0.294676, 0.639075",             "1.420873, 1.420869, 1.420872, 1.420876, 1.523193"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.017097, 0.032947, 0.054213, 0.094807, 0.609971",             "0.091168, 0.096623, 0.108594, 0.140442, 0.624323",             "0.176540, 0.177904, 0.183856, 0.205552, 0.674111",             "0.348626, 0.348716, 0.349898, 0.359158, 0.778703",             "1.726993, 1.726969, 1.726997, 1.726970, 1.840952"          );        }      }      timing () {        related_pin: "B";        timing_sense: positive_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "-0.002948, 0.031842, 0.043871, 0.058431, 0.170628",             "0.046736, 0.065667, 0.079697, 0.098261, 0.233471",             "0.087052, 0.099648, 0.114524, 0.132001, 0.286132",             "0.172376, 0.177352, 0.192051, 0.206645, 0.390972",             "0.875894, 0.869785, 0.881810, 0.887018, 1.014535"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.018316, 0.021069, 0.023194, 0.023536, -0.031337",             "0.058079, 0.058865, 0.060249, 0.060930, 0.021381",             "0.101524, 0.100223, 0.098824, 0.096634, 0.056583",             "0.190472, 0.187661, 0.183754, 0.176080, 0.122194",             "0.906272, 0.902147, 0.895946, 0.881308, 0.736220"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.023782, 0.069151, 0.034982, 0.054052, 0.449913",             "0.080000, 0.118312, 0.085490, 0.095978, 0.447397",             "0.146991, 0.152360, 0.150326, 0.156871, 0.457664",             "0.287629, 0.288180, 0.288056, 0.290376, 0.519847",             "1.420875, 1.420869, 1.420872, 1.420868, 1.491447"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.020252, 0.035538, 0.056873, 0.095129, 0.521070",             "0.091909, 0.097885, 0.110175, 0.140770, 0.556828",             "0.176533, 0.178340, 0.184385, 0.205074, 0.605254",             "0.348727, 0.348732, 0.349910, 0.357567, 0.705589",             "1.727017, 1.726977, 1.726979, 1.727007, 1.795626"          );        }      }    }  }  cell (AND2X2) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 877824.0;    cell_leakage_power: 0.1173;    pin (B) {      direction: input;      rise_capacitance: 0.004935475891367477;      fall_capacitance: 0.007858406695085389;      capacitance: 0.006396941293226433;    }    pin (A) {      direction: input;      rise_capacitance: 0.004150891096654475;      fall_capacitance: 0.005776428708787616;      capacitance: 0.004963659902721045;    }    pin (Y) {      direction: output;      function: "(B&A)";      function: "(A & B)";      timing () {        related_pin: "A";        timing_sense: positive_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "-0.003054, 0.030498, 0.039878, 0.053343, 0.188749",             "0.048098, 0.064059, 0.074620, 0.093597, 0.252448",             "0.087865, 0.098559, 0.108152, 0.125156, 0.300811",             "0.172721, 0.177015, 0.184227, 0.196165, 0.394456",             "0.875756, 0.870760, 0.872299, 0.869455, 0.975392"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.015977, 0.018737, 0.019304, 0.016191, -0.074696",             "0.056135, 0.056445, 0.057308, 0.057768, -0.014818",             "0.099933, 0.098214, 0.096071, 0.094474, 0.031563",             "0.189088, 0.185938, 0.181261, 0.173387, 0.117548",             "0.905025, 0.900630, 0.893784, 0.878306, 0.755396"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.026432, 0.038218, 0.045398, 0.077143, 0.593792",             "0.080791, 0.094490, 0.092269, 0.111832, 0.588352",             "0.147163, 0.151582, 0.153943, 0.167618, 0.594475",             "0.287657, 0.288087, 0.288559, 0.294676, 0.639075",             "1.420873, 1.420869, 1.420872, 1.420876, 1.523193"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.017097, 0.032947, 0.054213, 0.094807, 0.609971",             "0.091168, 0.096623, 0.108594, 0.140442, 0.624323",             "0.176540, 0.177904, 0.183856, 0.205552, 0.674111",             "0.348626, 0.348716, 0.349898, 0.359158, 0.778703",             "1.726993, 1.726969, 1.726997, 1.726970, 1.840952"          );        }      }      timing () {        related_pin: "B";        timing_sense: positive_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "-0.002948, 0.031842, 0.043871, 0.058431, 0.170628",             "0.046736, 0.065667, 0.079697, 0.098261, 0.233471",             "0.087052, 0.099648, 0.114524, 0.132001, 0.286132",             "0.172376, 0.177352, 0.192051, 0.206645, 0.390972",             "0.875894, 0.869785, 0.881810, 0.887018, 1.014535"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.018316, 0.021069, 0.023194, 0.023536, -0.031337",             "0.058079, 0.058865, 0.060249, 0.060930, 0.021381",             "0.101524, 0.100223, 0.098824, 0.096634, 0.056583",             "0.190472, 0.187661, 0.183754, 0.176080, 0.122194",             "0.906272, 0.902147, 0.895946, 0.881308, 0.736220"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.023782, 0.069151, 0.034982, 0.054052, 0.449913",             "0.080000, 0.118312, 0.085490, 0.095978, 0.447397",             "0.146991, 0.152360, 0.150326, 0.156871, 0.457664",             "0.287629, 0.288180, 0.288056, 0.290376, 0.519847",             "1.420875, 1.420869, 1.420872, 1.420868, 1.491447"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.020252, 0.035538, 0.056873, 0.095129, 0.521070",             "0.091909, 0.097885, 0.110175, 0.140770, 0.556828",             "0.176533, 0.178340, 0.184385, 0.205074, 0.605254",             "0.348727, 0.348732, 0.349910, 0.357567, 0.705589",             "1.727017, 1.726977, 1.726979, 1.727007, 1.795626"          );        }      }    }  }  cell (AOI21X1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 877824.0;    cell_leakage_power: 0.1173;    pin (C) {      direction: input;      rise_capacitance: 0.006296176741869404;      fall_capacitance: 0.006101450811807844;      capacitance: 0.006198813776838624;    }    pin (B) {      direction: input;      rise_capacitance: 0.004150897383251567;      fall_capacitance: 0.005762494885719812;      capacitance: 0.00495669613448569;    }    pin (A) {      direction: input;      rise_capacitance: 0.004935476111367993;      fall_capacitance: 0.007850019508283936;      capacitance: 0.006392747809825965;    }    pin (Y) {      direction: output;      function: "(!C&!B&!A|!C&B&!A|!C&!B&A)";      function: "((A & !B & !C + B & !A & !C + !A & !B & !C))";      timing () {        related_pin: "A";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.018081, 0.020447, 0.022456, 0.023296, -0.023076",             "0.095512, 0.095564, 0.097577, 0.105665, 0.139556",             "0.173079, 0.172613, 0.173245, 0.177966, 0.251687",             "0.328092, 0.327325, 0.326934, 0.328569, 0.431362",             "1.568078, 1.567023, 1.565399, 1.562764, 1.593146"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.011083, 0.027112, 0.034806, 0.046174, 0.138537",             "0.106126, 0.110980, 0.117817, 0.132662, 0.298423",             "0.200686, 0.203305, 0.207787, 0.219052, 0.408583",             "0.389684, 0.390741, 0.393128, 0.400447, 0.586557",             "1.901409, 1.900881, 1.900582, 1.901419, 1.980303"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.017400, 0.024998, 0.038610, 0.061076, 0.316134",             "0.127638, 0.127551, 0.128643, 0.138963, 0.448630",             "0.240290, 0.240260, 0.240283, 0.242298, 0.547010",             "0.465607, 0.465635, 0.465599, 0.465632, 0.673379",             "2.268621, 2.268618, 2.268620, 2.268621, 2.271276"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.029014, 0.032057, 0.039965, 0.063854, 0.320917",             "0.155270, 0.155388, 0.155812, 0.163213, 0.464067",             "0.286240, 0.286177, 0.286189, 0.286907, 0.549050",             "0.547857, 0.547835, 0.547859, 0.547862, 0.703410",             "2.640589, 2.640589, 2.640586, 2.640585, 2.640586"          );        }      }      timing () {        related_pin: "B";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.015335, 0.016945, 0.017387, 0.015057, -0.070130",             "0.093269, 0.093163, 0.094810, 0.101980, 0.105211",             "0.170827, 0.170332, 0.170780, 0.174845, 0.222749",             "0.325869, 0.325151, 0.324630, 0.325908, 0.409344",             "1.565863, 1.564927, 1.563288, 1.560589, 1.585799"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.013287, 0.024590, 0.032135, 0.044683, 0.169986",             "0.106631, 0.105383, 0.107181, 0.118863, 0.301183",             "0.201084, 0.196904, 0.194332, 0.196987, 0.392495",             "0.390038, 0.383879, 0.377817, 0.371491, 0.543659",             "1.901742, 1.893615, 1.883483, 1.864976, 1.785407"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.013635, 0.021335, 0.036352, 0.066782, 0.514064",             "0.122731, 0.122740, 0.123665, 0.133972, 0.500371",             "0.235316, 0.235334, 0.235297, 0.237378, 0.556421",             "0.460654, 0.460640, 0.460666, 0.460646, 0.664867",             "2.263652, 2.263652, 2.263651, 2.263650, 2.266535"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.029990, 0.038199, 0.056237, 0.095398, 0.544902",             "0.155321, 0.155296, 0.158206, 0.179362, 0.704360",             "0.286222, 0.286226, 0.286240, 0.291364, 0.780438",             "0.547837, 0.547857, 0.547852, 0.547862, 0.901566",             "2.640589, 2.640588, 2.640588, 2.640589, 2.647331"          );        }      }      timing () {        related_pin: "C";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.012884, 0.013824, 0.016369, 0.019083, 0.025408",             "0.085533, 0.079788, 0.082111, 0.094024, 0.172908",             "0.157410, 0.149628, 0.148170, 0.154670, 0.271254",             "0.300946, 0.291744, 0.286795, 0.285855, 0.427654",             "1.448498, 1.437802, 1.428280, 1.413900, 1.417542"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.005708, 0.008623, 0.010235, 0.012288, 0.017616",             "0.047043, 0.047780, 0.052874, 0.064024, 0.113032",             "0.091536, 0.089929, 0.090900, 0.100815, 0.179742",             "0.181015, 0.178070, 0.175614, 0.176901, 0.288000",             "0.897237, 0.893242, 0.888241, 0.878918, 0.902547"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.012755, 0.024831, 0.044968, 0.093110, 0.730524",             "0.115219, 0.115342, 0.119381, 0.140592, 0.704120",             "0.219879, 0.219898, 0.220189, 0.229051, 0.695466",             "0.429271, 0.429272, 0.429268, 0.429957, 0.760003",             "2.104581, 2.104581, 2.104580, 2.104582, 2.138119"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.013144, 0.039574, 0.064113, 0.105179, 0.740810",             "0.092532, 0.098951, 0.115649, 0.159781, 0.811024",             "0.178514, 0.180443, 0.190086, 0.223562, 0.880935",             "0.350931, 0.351086, 0.353728, 0.372580, 0.983884",             "1.729228, 1.729222, 1.729222, 1.729215, 1.983340"          );        }      }    }  }  cell (AOI22X1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 1097280.0;    cell_leakage_power: 0.1173;    pin (D) {      direction: input;      rise_capacitance: 0.004150836637055694;      fall_capacitance: 4.293461827055451e-05;      capacitance: 0.0020968856276631243;    }    pin (C) {      direction: input;      rise_capacitance: 0.004935392181405116;      fall_capacitance: 0.004717183954380674;      capacitance: 0.004826288067892895;    }    pin (B) {      direction: input;      rise_capacitance: 0.004150898468773608;      fall_capacitance: 0.005752203124409789;      capacitance: 0.004951550796591699;    }    pin (A) {      direction: input;      rise_capacitance: 0.00493547941452175;      fall_capacitance: 0.007832228421315403;      capacitance: 0.006383853917918576;    }    pin (Y) {      direction: output;      function: "!(D&C&!B&!A|D&C&B&!A|!D&!C&B&A|D&!C&B&A|D&C&B&A|!D&C&B&A|D&C&!B&A)";      function: "(!(A & B & C & D + A & B & C & !D + A & B & D & !C + A & C & D & !B + B & C & D & !A + A & B & !C & !D + C & D & !A & !B))";      timing () {        related_pin: "A";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.022453, 0.024534, 0.027322, 0.029301, -0.013605",             "0.094099, 0.094146, 0.096422, 0.104923, 0.133468",             "0.165999, 0.165576, 0.166553, 0.171933, 0.239819",             "0.309709, 0.308987, 0.308926, 0.311303, 0.412228",             "1.459135, 1.458114, 1.456788, 1.454769, 1.495149"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.010762, 0.031215, 0.042613, 0.056720, 0.163173",             "0.106795, 0.114659, 0.123175, 0.139761, 0.315494",             "0.201577, 0.206563, 0.212378, 0.225460, 0.423829",             "0.390704, 0.393586, 0.396927, 0.405778, 0.599884",             "1.902537, 1.903178, 1.903203, 1.904622, 1.991405"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.023524, 0.029914, 0.043867, 0.071865, 0.348115",             "0.124790, 0.124832, 0.126119, 0.138292, 0.474155",             "0.228743, 0.228744, 0.228751, 0.231812, 0.561135",             "0.436738, 0.436734, 0.436738, 0.436740, 0.675654",             "2.100895, 2.100896, 2.100897, 2.100896, 2.108562"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.034663, 0.063510, 0.047967, 0.068994, 0.335936",             "0.166389, 0.166412, 0.166844, 0.173304, 0.460327",             "0.297251, 0.297251, 0.297255, 0.297868, 0.539773",             "0.558920, 0.558909, 0.558922, 0.558921, 0.702122",             "2.651676, 2.651678, 2.651676, 2.651675, 2.651676"          );        }      }      timing () {        related_pin: "B";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.019651, 0.021446, 0.022931, 0.021898, -0.058654",             "0.091977, 0.091918, 0.093938, 0.101438, 0.098787",             "0.163917, 0.163487, 0.164267, 0.169031, 0.210590",             "0.307654, 0.306986, 0.306812, 0.308826, 0.390145",             "1.457089, 1.456195, 1.454848, 1.452765, 1.487992"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.013313, 0.029492, 0.038920, 0.053701, 0.189828",             "0.107559, 0.109470, 0.112797, 0.125324, 0.314605",             "0.202143, 0.200386, 0.199276, 0.203456, 0.404946",             "0.391163, 0.386838, 0.381869, 0.377141, 0.555274",             "1.902923, 1.895945, 1.886158, 1.868337, 1.797664"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.019077, 0.026325, 0.041095, 0.072960, 0.515154",             "0.120223, 0.120250, 0.121709, 0.133832, 0.515903",             "0.224169, 0.224172, 0.224205, 0.227354, 0.569826",             "0.432139, 0.432141, 0.432149, 0.432153, 0.667848",             "2.096306, 2.096306, 2.096306, 2.096307, 2.104382"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.036269, 0.063193, 0.062392, 0.098967, 0.551553",             "0.166373, 0.166389, 0.169112, 0.187994, 0.688610",             "0.297276, 0.297267, 0.297275, 0.302013, 0.760566",             "0.558916, 0.558919, 0.558917, 0.558918, 0.890221",             "2.651678, 2.651678, 2.651674, 2.651677, 2.657773"          );        }      }      timing () {        related_pin: "C";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.020200, 0.018794, 0.020910, 0.023798, 0.017569",             "0.092119, 0.084321, 0.084972, 0.095024, 0.157181",             "0.163930, 0.154431, 0.151294, 0.155481, 0.252498",             "0.307422, 0.296784, 0.290296, 0.286804, 0.407284",             "1.454937, 1.443187, 1.432682, 1.416494, 1.394586"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.010498, 0.021541, 0.028604, 0.036531, 0.082739",             "0.101264, 0.104773, 0.111902, 0.126711, 0.261658",             "0.195526, 0.196677, 0.201528, 0.213170, 0.380207",             "0.384366, 0.383767, 0.386473, 0.394329, 0.568488",             "1.895957, 1.893533, 1.893309, 1.894383, 1.975065"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.020633, 0.030682, 0.050793, 0.085135, 0.465687",             "0.123409, 0.123499, 0.127912, 0.152623, 0.625796",             "0.228067, 0.228069, 0.228437, 0.238660, 0.715340",             "0.437443, 0.437449, 0.437446, 0.438286, 0.825117",             "2.112769, 2.112769, 2.112771, 2.112769, 2.154781"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.021627, 0.033850, 0.033202, 0.057903, 0.432542",             "0.146054, 0.146118, 0.146677, 0.153711, 0.456404",             "0.276800, 0.276784, 0.276786, 0.277558, 0.525056",             "0.538347, 0.538333, 0.538346, 0.538344, 0.682865",             "2.630986, 2.630987, 2.630989, 2.630987, 2.630987"          );        }      }      timing () {        related_pin: "D";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.016935, 0.015243, 0.015695, 0.014740, -0.033455",             "0.089882, 0.081949, 0.082234, 0.090924, 0.115190",             "0.161756, 0.152189, 0.148795, 0.152107, 0.216277",             "0.305276, 0.294641, 0.288008, 0.283956, 0.379732",             "1.452819, 1.441160, 1.430652, 1.414354, 1.384946"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.011131, 0.019163, 0.024855, 0.033370, 0.110590",             "0.101703, 0.099111, 0.101250, 0.112517, 0.253820",             "0.195929, 0.190278, 0.188100, 0.190853, 0.353274",             "0.384754, 0.376936, 0.371227, 0.365324, 0.516649",             "1.896340, 1.886290, 1.876220, 1.858031, 1.777651"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.016198, 0.026696, 0.047157, 0.087412, 0.629442",             "0.118843, 0.118871, 0.123371, 0.147773, 0.655892",             "0.223461, 0.223424, 0.223842, 0.234191, 0.716081",             "0.432839, 0.432831, 0.432841, 0.433715, 0.813736",             "2.108153, 2.108150, 2.108150, 2.108152, 2.151140"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.019318, 0.037477, 0.046391, 0.085342, 0.625357",             "0.146062, 0.146061, 0.148782, 0.168097, 0.675212",             "0.276795, 0.276788, 0.276812, 0.281783, 0.738328",             "0.538338, 0.538332, 0.538332, 0.538345, 0.865002",             "2.630987, 2.630990, 2.630986, 2.630986, 2.638001"          );        }      }    }  }  cell (BUFX2) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 658368.0;    cell_leakage_power: 0.1173;    pin (A) {      direction: input;      rise_capacitance: 0.006189356217773286;      fall_capacitance: 0.008913012740210141;      capacitance: 0.007551184478991714;    }    pin (Y) {      direction: output;      function: "!(!A)";      function: "(A)";      timing () {        related_pin: "A";        timing_sense: positive_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "-0.003161, 0.018284, 0.022862, 0.029597, 0.082449",             "0.045168, 0.050118, 0.057399, 0.071712, 0.153721",             "0.086116, 0.085817, 0.089463, 0.102695, 0.199215",             "0.172383, 0.166439, 0.164531, 0.169815, 0.284515",             "0.876891, 0.864252, 0.852323, 0.833869, 0.853010"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.014482, 0.018379, 0.020768, 0.022068, -0.009140",             "0.054683, 0.055959, 0.059876, 0.069706, 0.071632",             "0.098664, 0.097948, 0.098411, 0.105829, 0.136458",             "0.187943, 0.185797, 0.183424, 0.183072, 0.249186",             "0.903989, 0.900540, 0.895789, 0.885878, 0.887209"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.021141, 0.053490, 0.059672, 0.113073, 0.840389",             "0.077202, 0.091911, 0.106094, 0.141454, 0.832516",             "0.145621, 0.149491, 0.160179, 0.190218, 0.830936",             "0.287250, 0.287270, 0.289142, 0.305563, 0.867895",             "1.420515, 1.420519, 1.420516, 1.420515, 1.614647"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.015821, 0.031534, 0.054604, 0.109725, 0.838134",             "0.090618, 0.095897, 0.108850, 0.147026, 0.841931",             "0.176061, 0.177617, 0.184255, 0.210648, 0.851578",             "0.348673, 0.348740, 0.350198, 0.363180, 0.905512",             "1.726970, 1.726967, 1.726971, 1.726970, 1.912266"          );        }      }    }  }  cell (BUFX4) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 877824.0;    cell_leakage_power: 0.1173;    pin (A) {      direction: input;      rise_capacitance: 0.006190154742284263;      fall_capacitance: 0.008890580111169952;      capacitance: 0.007540367426727108;    }    pin (Y) {      direction: output;      function: "!(!A)";      function: "(A)";      timing () {        related_pin: "A";        timing_sense: positive_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "-0.003332, 0.021756, 0.028208, 0.035969, 0.093993",             "0.026181, 0.039174, 0.048485, 0.060878, 0.137999",             "0.045221, 0.053837, 0.062262, 0.078031, 0.166608",             "0.086091, 0.087685, 0.092767, 0.107223, 0.211923",             "0.435684, 0.421572, 0.413289, 0.404913, 0.530577"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.019917, 0.023712, 0.027202, 0.030685, 0.008146",             "0.039940, 0.042849, 0.048226, 0.055685, 0.049883",             "0.059858, 0.061386, 0.065377, 0.075941, 0.084686",             "0.102963, 0.102628, 0.103617, 0.111160, 0.147406",             "0.459869, 0.457168, 0.453471, 0.446561, 0.530833"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.022521, 0.061092, 0.098545, 0.118668, 0.841214",             "0.047803, 0.081523, 0.116519, 0.130463, 0.837645",             "0.078588, 0.106772, 0.139897, 0.152839, 0.833203",             "0.146398, 0.156268, 0.169785, 0.200500, 0.833117",             "0.712599, 0.712588, 0.712577, 0.712845, 1.089880"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.022169, 0.034922, 0.057456, 0.109434, 0.837145",             "0.053315, 0.062209, 0.079539, 0.123803, 0.839403",             "0.093114, 0.098044, 0.110960, 0.148338, 0.840752",             "0.177240, 0.178652, 0.185453, 0.211899, 0.851340",             "0.865991, 0.865992, 0.865993, 0.866799, 1.209225"          );        }      }    }  }  cell (CLKBUF1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 1975104.0;    cell_leakage_power: 0.1173;    pin (A) {      direction: input;      rise_capacitance: 0.012377692547513634;      fall_capacitance: 0.014507744176093367;      capacitance: 0.0134427183618035;    }    pin (Y) {      direction: output;      function: "!(!A)";      function: "(A)";      timing () {        related_pin: "A";        timing_sense: positive_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "-0.003460, 0.039905, 0.046929, 0.057149, 0.129195",             "0.039219, 0.054860, 0.064114, 0.078186, 0.157207",             "0.055285, 0.068102, 0.077098, 0.093315, 0.177192",             "0.092471, 0.100229, 0.107093, 0.121807, 0.216231",             "0.435605, 0.429264, 0.424902, 0.423004, 0.538823"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.032185, 0.040159, 0.044451, 0.047986, 0.023388",             "0.050450, 0.056824, 0.062828, 0.071275, 0.053156",             "0.068299, 0.073963, 0.079184, 0.090175, 0.079028",             "0.109143, 0.112555, 0.116061, 0.124195, 0.130603",             "0.463189, 0.462100, 0.460697, 0.458229, 0.520719"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.038133, 0.073853, 0.108060, 0.106379, 0.742329",             "0.060385, 0.095859, 0.130135, 0.118818, 0.738152",             "0.087750, 0.120648, 0.154819, 0.142636, 0.732318",             "0.148631, 0.165728, 0.177042, 0.190178, 0.740928",             "0.712222, 0.712217, 0.712215, 0.712236, 0.974750"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.042002, 0.068064, 0.055378, 0.096450, 0.738499",             "0.070257, 0.097122, 0.081847, 0.113407, 0.740126",             "0.100976, 0.109877, 0.115079, 0.140310, 0.740118",             "0.178532, 0.181261, 0.187084, 0.204804, 0.747643",             "0.865667, 0.865654, 0.865705, 0.865803, 1.087674"          );        }      }    }  }  cell (HAX1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 9158175.0;    cell_leakage_power: 0.1173;    pin (B) {      direction: input;    }    pin (A) {      direction: input;    }    pin (YS) {      direction: output;      function: "!(!B&!A|B&A)";    }    pin (YC) {      direction: output;      function: "(B&A)";    }  }  cell (INV) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 438912.0;    cell_leakage_power: 0.1173;    pin (A) {      direction: input;      rise_capacitance: 0.006188556324394764;      fall_capacitance: 0.008930247677472391;      capacitance: 0.007559402000933578;    }    pin (Y) {      direction: output;      function: "!(A)";      function: "(!A)";      timing () {        related_pin: "A";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.005045, 0.004409, 0.003488, -0.000307, -0.065884",             "0.045060, 0.042762, 0.047513, 0.054699, 0.040967",             "0.088722, 0.082033, 0.082140, 0.091178, 0.111791",             "0.176767, 0.166715, 0.160456, 0.160380, 0.224564",             "0.882682, 0.869493, 0.854103, 0.828028, 0.824714"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.005563, 0.008580, 0.012595, 0.019184, 0.090037",             "0.046837, 0.047773, 0.053764, 0.068471, 0.181014",             "0.091353, 0.089965, 0.091587, 0.103620, 0.243501",             "0.180850, 0.178100, 0.176154, 0.179192, 0.343968",             "0.897064, 0.893202, 0.888379, 0.879811, 0.928891"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.008037, 0.029159, 0.057520, 0.115796, 0.870209",             "0.074565, 0.079799, 0.096343, 0.138761, 0.864852",             "0.145329, 0.146192, 0.155787, 0.188759, 0.863750",             "0.286862, 0.286915, 0.288453, 0.307678, 0.903487",             "1.420162, 1.420160, 1.420161, 1.420161, 1.674200"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.008767, 0.030412, 0.056701, 0.115566, 0.870158",             "0.089918, 0.095810, 0.111953, 0.155870, 0.877226",             "0.175658, 0.177628, 0.186680, 0.219666, 0.900539",             "0.348403, 0.348491, 0.350746, 0.368988, 0.971736",             "1.726613, 1.726603, 1.726598, 1.726608, 1.975691"          );        }      }    }  }  cell (INVX1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 438912.0;    cell_leakage_power: 0.1173;    pin (A) {      direction: input;      rise_capacitance: 0.006188556324394764;      fall_capacitance: 0.008930247677472391;      capacitance: 0.007559402000933578;    }    pin (Y) {      direction: output;      function: "!(A)";      function: "(!A)";      timing () {        related_pin: "A";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.005045, 0.004409, 0.003488, -0.000307, -0.065884",             "0.045060, 0.042762, 0.047513, 0.054699, 0.040967",             "0.088722, 0.082033, 0.082140, 0.091178, 0.111791",             "0.176767, 0.166715, 0.160456, 0.160380, 0.224564",             "0.882682, 0.869493, 0.854103, 0.828028, 0.824714"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.005563, 0.008580, 0.012595, 0.019184, 0.090037",             "0.046837, 0.047773, 0.053764, 0.068471, 0.181014",             "0.091353, 0.089965, 0.091587, 0.103620, 0.243501",             "0.180850, 0.178100, 0.176154, 0.179192, 0.343968",             "0.897064, 0.893202, 0.888379, 0.879811, 0.928891"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.008037, 0.029159, 0.057520, 0.115796, 0.870209",             "0.074565, 0.079799, 0.096343, 0.138761, 0.864852",             "0.145329, 0.146192, 0.155787, 0.188759, 0.863750",             "0.286862, 0.286915, 0.288453, 0.307678, 0.903487",             "1.420162, 1.420160, 1.420161, 1.420161, 1.674200"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.008767, 0.030412, 0.056701, 0.115566, 0.870158",             "0.089918, 0.095810, 0.111953, 0.155870, 0.877226",             "0.175658, 0.177628, 0.186680, 0.219666, 0.900539",             "0.348403, 0.348491, 0.350746, 0.368988, 0.971736",             "1.726613, 1.726603, 1.726598, 1.726608, 1.975691"          );        }      }    }  }  cell (INVX2) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 438912.0;    cell_leakage_power: 0.1173;    pin (A) {      direction: input;      rise_capacitance: 0.006188556324394764;      fall_capacitance: 0.008930247677472391;      capacitance: 0.007559402000933578;    }    pin (Y) {      direction: output;      function: "!(A)";      function: "(!A)";      timing () {        related_pin: "A";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.005045, 0.004409, 0.003488, -0.000307, -0.065884",             "0.045060, 0.042762, 0.047513, 0.054699, 0.040967",             "0.088722, 0.082033, 0.082140, 0.091178, 0.111791",             "0.176767, 0.166715, 0.160456, 0.160380, 0.224564",             "0.882682, 0.869493, 0.854103, 0.828028, 0.824714"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.005563, 0.008580, 0.012595, 0.019184, 0.090037",             "0.046837, 0.047773, 0.053764, 0.068471, 0.181014",             "0.091353, 0.089965, 0.091587, 0.103620, 0.243501",             "0.180850, 0.178100, 0.176154, 0.179192, 0.343968",             "0.897064, 0.893202, 0.888379, 0.879811, 0.928891"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.008037, 0.029159, 0.057520, 0.115796, 0.870209",             "0.074565, 0.079799, 0.096343, 0.138761, 0.864852",             "0.145329, 0.146192, 0.155787, 0.188759, 0.863750",             "0.286862, 0.286915, 0.288453, 0.307678, 0.903487",             "1.420162, 1.420160, 1.420161, 1.420161, 1.674200"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.008767, 0.030412, 0.056701, 0.115566, 0.870158",             "0.089918, 0.095810, 0.111953, 0.155870, 0.877226",             "0.175658, 0.177628, 0.186680, 0.219666, 0.900539",             "0.348403, 0.348491, 0.350746, 0.368988, 0.971736",             "1.726613, 1.726603, 1.726598, 1.726608, 1.975691"          );        }      }    }  }  cell (INVX4) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 658368.0;    cell_leakage_power: 0.1173;    pin (A) {      direction: input;      rise_capacitance: 0.012376891490235522;      fall_capacitance: 0.014525173100391225;      capacitance: 0.013451032295313373;    }    pin (Y) {      direction: output;      function: "!(A)";      function: "(!A)";      timing () {        related_pin: "A";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.004836, 0.003911, 0.003113, -0.000947, -0.066781",             "0.023782, 0.025438, 0.029154, 0.032024, -0.003570",             "0.045059, 0.042825, 0.047513, 0.054773, 0.040967",             "0.088711, 0.082075, 0.082140, 0.091166, 0.111791",             "0.441430, 0.429084, 0.416141, 0.399464, 0.483388"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.005423, 0.008343, 0.012279, 0.018588, 0.089288",             "0.025056, 0.028778, 0.035903, 0.047954, 0.142358",             "0.046837, 0.047773, 0.053764, 0.068471, 0.181014",             "0.091353, 0.089965, 0.091587, 0.103620, 0.243501",             "0.449471, 0.445891, 0.441675, 0.435947, 0.579373"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.007775, 0.029000, 0.057625, 0.115801, 0.870234",             "0.039447, 0.049978, 0.071107, 0.121251, 0.867453",             "0.074397, 0.079871, 0.096343, 0.138754, 0.864852",             "0.145174, 0.146264, 0.155787, 0.188826, 0.863750",             "0.711874, 0.711865, 0.711868, 0.712356, 1.131446"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.008278, 0.030236, 0.056581, 0.115515, 0.870125",             "0.047212, 0.057977, 0.079852, 0.130476, 0.873241",             "0.089918, 0.095810, 0.111953, 0.155870, 0.877226",             "0.175658, 0.177628, 0.186680, 0.219666, 0.900539",             "0.865308, 0.865247, 0.865250, 0.866773, 1.291412"          );        }      }    }  }  cell (INVX8) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 1097280.0;    cell_leakage_power: 0.1173;    pin (A) {      direction: input;      rise_capacitance: 0.02475357794277478;      fall_capacitance: 0.025715030488090873;      capacitance: 0.025234304215432823;    }    pin (Y) {      direction: output;      function: "!(A)";      function: "(!A)";      timing () {        related_pin: "A";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.004711, 0.003669, 0.002920, -0.001273, -0.067235",             "0.013476, 0.016314, 0.018100, 0.018126, -0.031065",             "0.023686, 0.025560, 0.029154, 0.032104, -0.003570",             "0.045002, 0.042834, 0.047470, 0.054715, 0.040967",             "0.220836, 0.210041, 0.201832, 0.197811, 0.273718"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.005356, 0.008225, 0.012119, 0.018287, 0.088886",             "0.014445, 0.019534, 0.025707, 0.035382, 0.118985",             "0.025056, 0.028778, 0.035903, 0.047954, 0.142358",             "0.046837, 0.047773, 0.053764, 0.068471, 0.181014",             "0.225616, 0.222601, 0.219861, 0.220213, 0.388011"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.007647, 0.028925, 0.057669, 0.115805, 0.870247",             "0.022139, 0.037257, 0.061628, 0.115441, 0.868805",             "0.039229, 0.050143, 0.071107, 0.121043, 0.867453",             "0.074441, 0.080027, 0.096405, 0.138670, 0.864852",             "0.357732, 0.357697, 0.358023, 0.371638, 0.931800"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.008160, 0.030148, 0.056531, 0.115506, 0.870109",             "0.026793, 0.041830, 0.067077, 0.120590, 0.871621",             "0.047212, 0.057977, 0.079852, 0.130476, 0.873241",             "0.089918, 0.095810, 0.111953, 0.155870, 0.877226",             "0.434491, 0.434491, 0.435448, 0.448752, 1.014657"          );        }      }    }  }  cell (MUX2X1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 1316736.0;    cell_leakage_power: 0.1173;    pin (S) {      direction: input;      rise_capacitance: 0.010338610799344835;      fall_capacitance: 0.008212780453515003;      capacitance: 0.009275695626429919;    }    pin (B) {      direction: input;      rise_capacitance: 0.006397490498320098;      fall_capacitance: 0.008895353965965845;      capacitance: 0.007646422232142972;    }    pin (A) {      direction: input;      rise_capacitance: 0.004937389414015676;      fall_capacitance: 0.007864001795670731;      capacitance: 0.006400695604843204;    }    pin (Y) {      direction: output;      function: "!(!S&B&!A|!S&B&A|S&B&A|S&!B&A)";      function: "(!(A & B & S + A & B & !S + A & S & !B + B & !A & !S))";      timing () {        related_pin: "A";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.019428, 0.021747, 0.023821, 0.024885, -0.020070",             "0.096776, 0.096705, 0.098699, 0.106638, 0.141139",             "0.174325, 0.173758, 0.174373, 0.179031, 0.252974",             "0.329331, 0.328462, 0.328043, 0.329638, 0.432416",             "1.569307, 1.568155, 1.566435, 1.563733, 1.594086"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.015958, 0.027807, 0.035343, 0.047135, 0.140744",             "0.109318, 0.113175, 0.119175, 0.133278, 0.299017",             "0.203682, 0.205651, 0.209577, 0.220207, 0.408863",             "0.392584, 0.393181, 0.395219, 0.402088, 0.586689",             "1.904228, 1.903421, 1.903075, 1.903731, 1.981518"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.020411, 0.026763, 0.039961, 0.063425, 0.317670",             "0.130948, 0.130915, 0.131768, 0.141947, 0.451197",             "0.243567, 0.243583, 0.243517, 0.245528, 0.549507",             "0.468902, 0.468912, 0.468912, 0.468919, 0.675777",             "2.271917, 2.271914, 2.271917, 2.271916, 2.274560"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.034547, 0.032700, 0.040748, 0.064546, 0.323227",             "0.155499, 0.155537, 0.155799, 0.162945, 0.464800",             "0.286354, 0.286330, 0.286313, 0.286918, 0.548668",             "0.547917, 0.547919, 0.547900, 0.547926, 0.702513",             "2.640604, 2.640603, 2.640602, 2.640603, 2.640599"          );        }      }      timing () {        related_pin: "B";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.012479, 0.020519, 0.023592, 0.024838, -0.020037",             "0.088439, 0.091403, 0.095223, 0.104973, 0.140988",             "0.165879, 0.167485, 0.169565, 0.175932, 0.252738",             "0.320839, 0.321506, 0.322081, 0.325051, 0.431811",             "1.560766, 1.560490, 1.559111, 1.556910, 1.590657"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.023985, 0.029348, 0.035865, 0.047430, 0.140831",             "0.115535, 0.117784, 0.122066, 0.134594, 0.299174",             "0.209718, 0.210748, 0.213291, 0.222435, 0.409049",             "0.398509, 0.398634, 0.399621, 0.405195, 0.587049",             "1.910075, 1.909263, 1.908276, 1.908150, 1.983766"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.021856, 0.028909, 0.040295, 0.063869, 0.317858",             "0.130661, 0.130662, 0.132045, 0.142857, 0.451367",             "0.243245, 0.243252, 0.243275, 0.245652, 0.549740",             "0.468595, 0.468585, 0.468603, 0.468582, 0.676414",             "2.271590, 2.271590, 2.271589, 2.271591, 2.274367"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.026595, 0.030491, 0.040269, 0.064145, 0.322768",             "0.155850, 0.155839, 0.155924, 0.162605, 0.464668",             "0.286633, 0.286644, 0.286657, 0.287110, 0.548624",             "0.548248, 0.548238, 0.548248, 0.548232, 0.702345",             "2.641009, 2.640987, 2.640985, 2.640985, 2.640985"          );        }      }      timing () {        related_pin: "S";        timing_sense: non_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.015477, 0.019632, 0.023785, 0.028539, 0.047003",             "0.089791, 0.086977, 0.089938, 0.101079, 0.177000",             "0.166627, 0.161655, 0.161408, 0.167180, 0.272033",             "0.321166, 0.314571, 0.311301, 0.310607, 0.436604",             "1.560695, 1.552272, 1.545023, 1.533295, 1.520465"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.009379, 0.017143, 0.022831, 0.029415, 0.049506",             "0.098224, 0.096461, 0.098086, 0.107381, 0.189678",             "0.191790, 0.187334, 0.185018, 0.186251, 0.294384",             "0.380119, 0.373656, 0.367998, 0.361115, 0.471759",             "1.891175, 1.882501, 1.872694, 1.854265, 1.753057"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.025135, 0.032734, 0.048051, 0.084704, 0.566326",             "0.130733, 0.130708, 0.132826, 0.150233, 0.602446",             "0.243422, 0.243393, 0.243371, 0.247979, 0.662237",             "0.468752, 0.468761, 0.468758, 0.468739, 0.756824",             "2.271751, 2.271754, 2.271754, 2.271752, 2.282476"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.022469, 0.035382, 0.052960, 0.089711, 0.571861",             "0.155713, 0.155428, 0.156540, 0.173483, 0.639442",             "0.286482, 0.286497, 0.286481, 0.290082, 0.712770",             "0.548075, 0.548076, 0.548073, 0.548087, 0.844708",             "2.640769, 2.640767, 2.640766, 2.640768, 2.646447"          );        }      }    }  }  cell (NAND2X1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 658368.0;    cell_leakage_power: 0.1173;    pin (B) {      direction: input;      rise_capacitance: 0.004150889506161318;      fall_capacitance: 0.0057806089303857715;      capacitance: 0.004965749218273544;    }    pin (A) {      direction: input;      rise_capacitance: 0.004935475394936947;      fall_capacitance: 0.007870695939137575;      capacitance: 0.0064030856670372616;    }    pin (Y) {      direction: output;      function: "!(B&A)";      function: "(!A & B)";      timing () {        related_pin: "A";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.007196, 0.007595, 0.006535, 0.002335, -0.081701",             "0.048131, 0.045109, 0.049226, 0.055554, 0.023149",             "0.091843, 0.084555, 0.083952, 0.092035, 0.093853",             "0.179911, 0.169368, 0.162474, 0.161292, 0.207503",             "0.885821, 0.872458, 0.856675, 0.829540, 0.814241"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.015633, 0.021476, 0.028398, 0.039896, 0.146774",             "0.107818, 0.110541, 0.116624, 0.131991, 0.322868",             "0.202142, 0.203338, 0.207611, 0.219924, 0.436789",             "0.391020, 0.391118, 0.393477, 0.402003, 0.616285",             "1.902651, 1.901546, 1.901261, 1.902664, 2.012825"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.012945, 0.032109, 0.051696, 0.088446, 0.524049",             "0.079676, 0.085046, 0.101926, 0.145349, 0.674950",             "0.150526, 0.151440, 0.161506, 0.195645, 0.761149",             "0.292156, 0.292210, 0.293910, 0.314078, 0.887525",             "1.425456, 1.425453, 1.425463, 1.425463, 1.693531"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.013964, 0.019082, 0.028092, 0.057082, 0.488461",             "0.142119, 0.142058, 0.142068, 0.146714, 0.440570",             "0.272785, 0.272844, 0.272830, 0.273049, 0.465710",             "0.534379, 0.534395, 0.534370, 0.534368, 0.637728",             "2.627044, 2.627042, 2.627042, 2.627043, 2.627043"          );        }      }      timing () {        related_pin: "B";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.005849, 0.004862, 0.001953, -0.005765, -0.126919",             "0.046431, 0.043395, 0.046993, 0.051015, -0.016988",             "0.090143, 0.082837, 0.081976, 0.088941, 0.057037",             "0.178220, 0.167700, 0.160608, 0.158752, 0.176347",             "0.884156, 0.870837, 0.855034, 0.827713, 0.802365"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.013792, 0.018689, 0.025506, 0.038065, 0.175360",             "0.107725, 0.103637, 0.104869, 0.117440, 0.315940",             "0.202285, 0.196217, 0.193422, 0.197331, 0.412055",             "0.391293, 0.383864, 0.377831, 0.373134, 0.567831",             "1.903042, 1.894202, 1.884122, 1.866559, 1.824766"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.009695, 0.029176, 0.049614, 0.090169, 0.630637",             "0.076701, 0.082090, 0.098427, 0.140823, 0.690595",             "0.147420, 0.148384, 0.158014, 0.191352, 0.764094",             "0.289054, 0.289045, 0.290759, 0.310455, 0.877521",             "1.422334, 1.422325, 1.422328, 1.422326, 1.682986"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.014142, 0.022429, 0.038545, 0.077748, 0.619421",             "0.142113, 0.142115, 0.143140, 0.157535, 0.605736",             "0.272824, 0.272791, 0.272803, 0.275498, 0.636002",             "0.534396, 0.534363, 0.534379, 0.534395, 0.781620",             "2.627039, 2.627044, 2.627041, 2.627039, 2.630177"          );        }      }    }  }  cell (NAND3X1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 877824.0;    cell_leakage_power: 0.1173;    pin (C) {      direction: input;      rise_capacitance: 0.004149650005143659;      fall_capacitance: 0.005781505198438881;      capacitance: 0.00496557760179127;    }    pin (B) {      direction: input;      rise_capacitance: 0.004830629997798454;      fall_capacitance: 0.0065460190151835455;      capacitance: 0.005688324506490999;    }    pin (A) {      direction: input;      rise_capacitance: 0.0049353598856550955;      fall_capacitance: 0.007870869195042688;      capacitance: 0.006403114540348892;    }    pin (Y) {      direction: output;      function: "!(C&B&A)";      function: "(!A & B & C)";      timing () {        related_pin: "A";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.008972, 0.009457, 0.008503, 0.002962, -0.100701",             "0.051333, 0.047529, 0.050994, 0.056259, 0.000383",             "0.095086, 0.087278, 0.086059, 0.093123, 0.071594",             "0.183200, 0.172294, 0.164894, 0.162676, 0.188303",             "0.889127, 0.875625, 0.859595, 0.831781, 0.805945"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.020769, 0.029603, 0.037436, 0.051718, 0.185550",             "0.137563, 0.140846, 0.146094, 0.159442, 0.367674",             "0.257454, 0.258396, 0.261172, 0.270635, 0.491854",             "0.497675, 0.496765, 0.496908, 0.501401, 0.695984",             "2.420799, 2.417810, 2.414180, 2.409069, 2.461911"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.017292, 0.035367, 0.056139, 0.094266, 0.548119",             "0.084992, 0.090373, 0.107178, 0.150243, 0.683940",             "0.155780, 0.156840, 0.166974, 0.201316, 0.764246",             "0.297431, 0.297423, 0.299270, 0.320137, 0.888634",             "1.430747, 1.430744, 1.430744, 1.430744, 1.704785"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.023922, 0.025750, 0.032068, 0.055931, 0.495161",             "0.188089, 0.188153, 0.188154, 0.189888, 0.453757",             "0.355339, 0.355334, 0.355344, 0.355344, 0.505262",             "0.689777, 0.689789, 0.689794, 0.689787, 0.761388",             "3.365704, 3.365704, 3.365703, 3.365700, 3.365703"          );        }      }      timing () {        related_pin: "B";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.008334, 0.007999, 0.005426, -0.001872, -0.134533",             "0.049592, 0.045886, 0.049021, 0.052517, -0.029801",             "0.093307, 0.085588, 0.084148, 0.090357, 0.043619",             "0.181419, 0.170558, 0.163034, 0.160347, 0.164016",             "0.887312, 0.873890, 0.857871, 0.829951, 0.796345"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.023592, 0.029466, 0.038594, 0.055239, 0.219385",             "0.141155, 0.143057, 0.148603, 0.163867, 0.404481",             "0.261171, 0.261449, 0.264802, 0.276119, 0.527468",             "0.501476, 0.500497, 0.501691, 0.508419, 0.732132",             "2.424678, 2.422318, 2.420551, 2.419097, 2.507900"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.014708, 0.032973, 0.052387, 0.088064, 0.507153",             "0.081875, 0.087345, 0.103349, 0.145759, 0.652137",             "0.152726, 0.153620, 0.163460, 0.196949, 0.738027",             "0.294293, 0.294378, 0.296116, 0.316174, 0.868979",             "1.427621, 1.427628, 1.427634, 1.427631, 1.694351"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.023614, 0.026398, 0.032949, 0.053238, 0.454307",             "0.188147, 0.188117, 0.188099, 0.189875, 0.415502",             "0.355311, 0.355293, 0.355317, 0.355295, 0.485465",             "0.689798, 0.689798, 0.689789, 0.689787, 0.751303",             "3.365699, 3.365700, 3.365702, 3.365700, 3.365698"          );        }      }      timing () {        related_pin: "C";        timing_sense: negative_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.006743, 0.005507, 0.001409, -0.008755, -0.170135",             "0.047762, 0.044106, 0.046936, 0.048789, -0.060209",             "0.091478, 0.083801, 0.082253, 0.087681, 0.016317",             "0.179569, 0.168817, 0.161183, 0.158074, 0.141274",             "0.885505, 0.872150, 0.856133, 0.828109, 0.787687"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.021221, 0.026912, 0.036046, 0.053704, 0.240197",             "0.140988, 0.137908, 0.140081, 0.153521, 0.407328",             "0.261329, 0.256442, 0.255023, 0.261001, 0.520047",             "0.501821, 0.495706, 0.491228, 0.489434, 0.706541",             "2.425190, 2.417843, 2.409583, 2.395522, 2.391247"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.011465, 0.029918, 0.048625, 0.083915, 0.522973",             "0.078783, 0.083779, 0.099962, 0.141527, 0.642500",             "0.149540, 0.150478, 0.160020, 0.192902, 0.728158",             "0.291212, 0.291252, 0.292980, 0.312574, 0.856649",             "1.424500, 1.424495, 1.424506, 1.424500, 1.685213"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.023566, 0.027391, 0.036715, 0.061844, 0.502475",             "0.188148, 0.188141, 0.188149, 0.192359, 0.487219",             "0.355298, 0.355308, 0.355319, 0.355322, 0.560090",             "0.689793, 0.689798, 0.689798, 0.689793, 0.809696",             "3.365702, 3.365700, 3.365703, 3.365699, 3.365703"          );        }      }    }  }  cell (NOR2X1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 658368.0;    cell_leakage_power: 0.1173;    pin (B) {      direction: input;    }    pin (A) {      direction: input;    }    pin (Y) {      direction: output;      function: "(!B&!A)";    }  }  cell (NOR3X1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 1536192.0;    cell_leakage_power: 0.1173;    pin (C) {      direction: input;    }    pin (B) {      direction: input;    }    pin (A) {      direction: input;    }    pin (Y) {      direction: output;      function: "(!C&!B&!A)";    }  }  cell (OAI21X1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 877824.0;    cell_leakage_power: 0.1173;    pin (C) {      direction: input;    }    pin (B) {      direction: input;    }    pin (A) {      direction: input;    }    pin (Y) {      direction: output;      function: "!(C&B&!A|C&B&A|C&!B&A)";    }  }  cell (OAI22X1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 6645582.0;    cell_leakage_power: 0.1173;    pin (D) {      direction: input;    }    pin (C) {      direction: input;    }    pin (B) {      direction: input;    }    pin (A) {      direction: input;    }    pin (Y) {      direction: output;      function: "(!D&!C&!B&!A|D&!C&!B&!A|D&C&!B&!A|!D&C&!B&!A|!D&!C&B&!A|!D&!C&B&A|!D&!C&!B&A)";    }  }  cell (OR2X1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 877824.0;    cell_leakage_power: 0.1173;    pin (B) {      direction: input;      rise_capacitance: 0.006299305363616857;      fall_capacitance: 0.008885220124112183;      capacitance: 0.007592262743864521;    }    pin (A) {      direction: input;      rise_capacitance: 0.006309610190379141;      fall_capacitance: 0.00630283867340493;      capacitance: 0.006306224431892035;    }    pin (Y) {      direction: output;      function: "!(!B&!A)";      function: "(!!A & !B)";      timing () {        related_pin: "A";        timing_sense: positive_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "-0.002786, -0.022732, 0.019161, 0.019580, -0.011410",             "0.041854, 0.043329, 0.051603, 0.059323, 0.062560",             "0.084916, 0.078410, 0.082038, 0.088448, 0.103720",             "0.172611, 0.158216, 0.154751, 0.153103, 0.172991",             "0.878301, 0.855095, 0.838016, 0.810227, 0.720418"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.028540, 0.031368, 0.036819, 0.045426, 0.100228",             "0.069115, 0.070143, 0.075842, 0.091793, 0.184877",             "0.111955, 0.111797, 0.115439, 0.127845, 0.254311",             "0.200493, 0.199357, 0.201189, 0.207941, 0.374505",             "0.915994, 0.913985, 0.914073, 0.914386, 1.007881"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.013392, 0.051401, 0.087406, 0.152742, 0.687675",             "0.075475, 0.097421, 0.130787, 0.191718, 0.688979",             "0.145593, 0.155613, 0.179062, 0.217295, 0.718675",             "0.287207, 0.287428, 0.292736, 0.315169, 0.792432",             "1.420518, 1.420518, 1.420514, 1.420518, 1.582675"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.024927, 0.029452, 0.042786, 0.080200, 0.663641",             "0.093953, 0.096473, 0.103565, 0.127433, 0.668426",             "0.177647, 0.178545, 0.181992, 0.198197, 0.680919",             "0.349306, 0.349321, 0.350007, 0.357523, 0.740411",             "1.727348, 1.727346, 1.727366, 1.727370, 1.864145"          );        }      }      timing () {        related_pin: "B";        timing_sense: positive_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "-0.002737, 0.015129, 0.026339, 0.031155, 0.057827",             "0.042995, 0.049240, 0.058421, 0.069922, 0.132870",             "0.085418, 0.083324, 0.088199, 0.097150, 0.172762",             "0.172559, 0.161472, 0.159668, 0.160671, 0.230240",             "0.877741, 0.855521, 0.839844, 0.814300, 0.732001"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.029469, 0.033740, 0.039244, 0.045782, 0.049818",             "0.070126, 0.072893, 0.078115, 0.092691, 0.135288",             "0.112911, 0.114897, 0.118672, 0.129875, 0.209498",             "0.201393, 0.202758, 0.205335, 0.211918, 0.341264",             "0.916880, 0.917687, 0.919165, 0.921192, 1.006897"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.016092, 0.057562, 0.095169, 0.162177, 0.699235",             "0.076858, 0.103458, 0.137895, 0.200949, 0.702148",             "0.145825, 0.159732, 0.185528, 0.227910, 0.724008",             "0.287314, 0.288184, 0.294861, 0.320599, 0.788394",             "1.420530, 1.420534, 1.420537, 1.420539, 1.574668"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.024627, 0.027679, 0.036375, 0.067524, 0.609658",             "0.094505, 0.095669, 0.100243, 0.118924, 0.616317",             "0.177929, 0.178313, 0.180338, 0.192868, 0.629773",             "0.349160, 0.349206, 0.349675, 0.355201, 0.694984",             "1.727366, 1.727352, 1.727345, 1.727367, 1.855198"          );        }      }    }  }  cell (OR2X2) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 877824.0;    cell_leakage_power: 0.1173;    pin (B) {      direction: input;      rise_capacitance: 0.006299305363616857;      fall_capacitance: 0.008885220124112183;      capacitance: 0.007592262743864521;    }    pin (A) {      direction: input;      rise_capacitance: 0.006309610190379141;      fall_capacitance: 0.00630283867340493;      capacitance: 0.006306224431892035;    }    pin (Y) {      direction: output;      function: "!(!B&!A)";      function: "(!!A & !B)";      timing () {        related_pin: "A";        timing_sense: positive_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "-0.002786, -0.022732, 0.019161, 0.019580, -0.011410",             "0.041854, 0.043329, 0.051603, 0.059323, 0.062560",             "0.084916, 0.078410, 0.082038, 0.088448, 0.103720",             "0.172611, 0.158216, 0.154751, 0.153103, 0.172991",             "0.878301, 0.855095, 0.838016, 0.810227, 0.720418"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.028540, 0.031368, 0.036819, 0.045426, 0.100228",             "0.069115, 0.070143, 0.075842, 0.091793, 0.184877",             "0.111955, 0.111797, 0.115439, 0.127845, 0.254311",             "0.200493, 0.199357, 0.201189, 0.207941, 0.374505",             "0.915994, 0.913985, 0.914073, 0.914386, 1.007881"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.013392, 0.051401, 0.087406, 0.152742, 0.687675",             "0.075475, 0.097421, 0.130787, 0.191718, 0.688979",             "0.145593, 0.155613, 0.179062, 0.217295, 0.718675",             "0.287207, 0.287428, 0.292736, 0.315169, 0.792432",             "1.420518, 1.420518, 1.420514, 1.420518, 1.582675"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.024927, 0.029452, 0.042786, 0.080200, 0.663641",             "0.093953, 0.096473, 0.103565, 0.127433, 0.668426",             "0.177647, 0.178545, 0.181992, 0.198197, 0.680919",             "0.349306, 0.349321, 0.350007, 0.357523, 0.740411",             "1.727348, 1.727346, 1.727366, 1.727370, 1.864145"          );        }      }      timing () {        related_pin: "B";        timing_sense: positive_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "-0.002737, 0.015129, 0.026339, 0.031155, 0.057827",             "0.042995, 0.049240, 0.058421, 0.069922, 0.132870",             "0.085418, 0.083324, 0.088199, 0.097150, 0.172762",             "0.172559, 0.161472, 0.159668, 0.160671, 0.230240",             "0.877741, 0.855521, 0.839844, 0.814300, 0.732001"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.029469, 0.033740, 0.039244, 0.045782, 0.049818",             "0.070126, 0.072893, 0.078115, 0.092691, 0.135288",             "0.112911, 0.114897, 0.118672, 0.129875, 0.209498",             "0.201393, 0.202758, 0.205335, 0.211918, 0.341264",             "0.916880, 0.917687, 0.919165, 0.921192, 1.006897"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.016092, 0.057562, 0.095169, 0.162177, 0.699235",             "0.076858, 0.103458, 0.137895, 0.200949, 0.702148",             "0.145825, 0.159732, 0.185528, 0.227910, 0.724008",             "0.287314, 0.288184, 0.294861, 0.320599, 0.788394",             "1.420530, 1.420534, 1.420537, 1.420539, 1.574668"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.024627, 0.027679, 0.036375, 0.067524, 0.609658",             "0.094505, 0.095669, 0.100243, 0.118924, 0.616317",             "0.177929, 0.178313, 0.180338, 0.192868, 0.629773",             "0.349160, 0.349206, 0.349675, 0.355201, 0.694984",             "1.727366, 1.727352, 1.727345, 1.727367, 1.855198"          );        }      }    }  }  cell (XNOR2X1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 1536192.0;    cell_leakage_power: 0.1173;    pin (B) {      direction: input;      rise_capacitance: 0.01258592702529086;      fall_capacitance: 0.01450190121076146;      capacitance: 0.01354391411802616;    }    pin (A) {      direction: input;      rise_capacitance: 0.012735641153553287;      fall_capacitance: 0.011631625278500075;      capacitance: 0.012183633216026682;    }    pin (Y) {      direction: output;      function: "!(B&!A|!B&A)";      function: "(!(A & !B + B & !A))";      timing () {        related_pin: "A";        timing_sense: non_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.013989, 0.018024, 0.023608, 0.028544, 0.046990",             "0.086886, 0.083890, 0.087944, 0.100115, 0.176994",             "0.163666, 0.158058, 0.158583, 0.165414, 0.272018",             "0.318190, 0.310552, 0.307716, 0.307846, 0.436394",             "1.557671, 1.547810, 1.540413, 1.528732, 1.518482"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.013397, 0.018391, 0.023707, 0.029700, 0.049560",             "0.104554, 0.099267, 0.099516, 0.107893, 0.189692",             "0.198104, 0.190587, 0.187032, 0.187249, 0.294404",             "0.386428, 0.377203, 0.370471, 0.362665, 0.471845",             "1.897500, 1.886363, 1.875729, 1.856653, 1.754002"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.023920, 0.038475, 0.061455, 0.084755, 0.566336",             "0.130811, 0.130539, 0.133792, 0.151736, 0.602473",             "0.243429, 0.243459, 0.243317, 0.248917, 0.662479",             "0.468797, 0.468798, 0.468793, 0.468774, 0.757658",             "2.271785, 2.271788, 2.271788, 2.271786, 2.282952"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.025980, 0.034386, 0.051179, 0.088206, 0.570375",             "0.155775, 0.156006, 0.156492, 0.172986, 0.639449",             "0.286528, 0.286545, 0.286577, 0.289826, 0.712632",             "0.548141, 0.548132, 0.548123, 0.548137, 0.844311",             "2.640825, 2.640828, 2.640826, 2.640825, 2.646410"          );        }      }      timing () {        related_pin: "B";        timing_sense: non_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.016690, 0.026445, 0.031880, 0.037261, 0.048616",             "0.091051, 0.095514, 0.100621, 0.112158, 0.182377",             "0.168213, 0.171079, 0.174250, 0.182514, 0.282866",             "0.322976, 0.324677, 0.326168, 0.330961, 0.454972",             "1.562706, 1.563167, 1.562488, 1.561803, 1.609286"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.026885, 0.032811, 0.038875, 0.047403, 0.087933",             "0.117282, 0.120145, 0.124314, 0.135271, 0.246516",             "0.211168, 0.212784, 0.215279, 0.223230, 0.363714",             "0.399743, 0.400411, 0.401407, 0.406048, 0.555385",             "1.911052, 1.910726, 1.909802, 1.909023, 1.963658"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.024789, 0.028839, 0.037807, 0.058878, 0.265656",             "0.130769, 0.130753, 0.131666, 0.140183, 0.394222",             "0.243431, 0.243415, 0.243392, 0.244961, 0.496125",             "0.468744, 0.468748, 0.468759, 0.468730, 0.635129",             "2.271767, 2.271764, 2.271765, 2.271763, 2.273192"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.028716, 0.030099, 0.037985, 0.059222, 0.254230",             "0.155712, 0.155759, 0.155806, 0.162226, 0.429522",             "0.286550, 0.286491, 0.286518, 0.286872, 0.538319",             "0.548133, 0.548105, 0.548127, 0.548107, 0.702960",             "2.640815, 2.640815, 2.640812, 2.640812, 2.640812"          );        }      }    }  }  cell (XOR2X1) {    pg_pin (vdd) { voltage_name : "vdd"; pg_type : "primary_power"; } pg_pin (gnd) { voltage_name : "gnd"; pg_type : "primary_ground"; } area: 1536192.0;    cell_leakage_power: 0.1173;    pin (B) {      direction: input;      rise_capacitance: 0.011125237855721299;      fall_capacitance: 0.013458368537199627;      capacitance: 0.012291803196460463;    }    pin (A) {      direction: input;      rise_capacitance: 0.005915560312833218;      fall_capacitance: 0.009103970632490159;      capacitance: 0.007509765472661688;    }    pin (Y) {      direction: output;      function: "!(!B&!A|B&A)";      function: "(!(A & B + !A & !B))";      timing () {        related_pin: "A";        timing_sense: non_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.012892, 0.017884, 0.023582, 0.028581, 0.047039",             "0.088020, 0.084498, 0.088176, 0.100267, 0.176997",             "0.164777, 0.158599, 0.158811, 0.165507, 0.272027",             "0.319197, 0.311031, 0.307896, 0.307904, 0.436456",             "1.558585, 1.548160, 1.540528, 1.528710, 1.518515"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.016957, 0.021209, 0.026433, 0.031788, 0.049581",             "0.105352, 0.101262, 0.101517, 0.109489, 0.189817",             "0.199116, 0.192599, 0.189067, 0.189128, 0.294604",             "0.387610, 0.379329, 0.372685, 0.364852, 0.472363",             "1.898846, 1.888657, 1.878160, 1.859296, 1.755721"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.023649, 0.043194, 0.070971, 0.085067, 0.565950",             "0.130727, 0.130960, 0.133759, 0.151712, 0.602446",             "0.243440, 0.243431, 0.243448, 0.248631, 0.662387",             "0.468772, 0.468795, 0.468785, 0.468785, 0.757475",             "2.271774, 2.271788, 2.271788, 2.271786, 2.282763"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.028995, 0.032141, 0.047871, 0.084453, 0.560124",             "0.155738, 0.155044, 0.155572, 0.170946, 0.631684",             "0.286568, 0.286562, 0.286518, 0.289308, 0.710606",             "0.548144, 0.548142, 0.548134, 0.548140, 0.843303",             "2.640828, 2.640826, 2.640826, 2.640827, 2.646192"          );        }      }      timing () {        related_pin: "B";        timing_sense: non_unate;        cell_rise (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.014892, 0.026246, 0.031838, 0.037204, 0.048590",             "0.091734, 0.095678, 0.100730, 0.112148, 0.182368",             "0.168923, 0.171200, 0.174309, 0.182497, 0.282866",             "0.323721, 0.324777, 0.326200, 0.330900, 0.455028",             "1.563456, 1.563165, 1.562411, 1.561608, 1.609279"          );        }        cell_fall (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.024069, 0.032502, 0.038891, 0.047467, 0.087946",             "0.115473, 0.118528, 0.123164, 0.134818, 0.246531",             "0.209458, 0.210932, 0.213732, 0.222349, 0.363720",             "0.398106, 0.398429, 0.399551, 0.404751, 0.555323",             "1.909486, 1.908601, 1.907591, 1.907104, 1.962711"          );        }        rise_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.025121, 0.046358, 0.037829, 0.058746, 0.265684",             "0.130823, 0.130739, 0.131644, 0.140015, 0.394131",             "0.243421, 0.243395, 0.243335, 0.244847, 0.496071",             "0.468767, 0.468755, 0.468745, 0.468743, 0.634781",             "2.271778, 2.271763, 2.271765, 2.271761, 2.273117"          );        }        fall_transition (delay_template_5x5) {          index_1 (            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"          );          index_2 (            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"          );          values (            "0.031037, 0.031042, 0.038291, 0.059160, 0.254240",             "0.155716, 0.155677, 0.155943, 0.162510, 0.429541",             "0.286530, 0.286528, 0.286510, 0.286927, 0.538348",             "0.548114, 0.548124, 0.548121, 0.548120, 0.703170",             "2.640816, 2.640814, 2.640814, 2.640812, 2.640811"          );        }      }    }  }}
\ No newline at end of file
diff --git a/cells/mag/AND2X1.mag b/cells/mag/AND2X1.mag
index f7c2896..934e930 100644
--- a/cells/mag/AND2X1.mag
+++ b/cells/mag/AND2X1.mag
@@ -1,350 +1,360 @@
 magic
 tech sky130A
-timestamp 1624702434
+magscale 1 2
+timestamp 1624887576
+<< checkpaint >>
+rect -1260 -1374 11260 2038
 << nwell >>
-rect 0 179 576 333
+rect 0 358 1152 666
 << nmos >>
-rect 137 24 152 66
-rect 281 24 296 66
-rect 425 24 440 66
+rect 273 48 303 132
+rect 561 48 591 132
+rect 849 48 879 132
 << pmos >>
-rect 137 225 152 309
-rect 281 225 296 309
-rect 425 225 440 309
+rect 273 450 303 618
+rect 561 450 591 618
+rect 849 450 879 618
 << ndiff >>
-rect 82 67 111 73
-rect 82 66 88 67
-rect 58 50 88 66
-rect 105 66 111 67
-rect 466 67 495 73
-rect 466 66 472 67
-rect 105 50 137 66
-rect 58 24 137 50
-rect 152 24 281 66
-rect 296 51 425 66
-rect 296 34 328 51
-rect 345 34 425 51
-rect 296 24 425 34
-rect 440 50 472 66
-rect 489 66 495 67
-rect 489 50 519 66
-rect 440 24 519 50
+rect 163 134 221 146
+rect 163 132 175 134
+rect 115 100 175 132
+rect 209 132 221 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 209 100 273 132
+rect 115 48 273 100
+rect 303 48 561 132
+rect 591 102 849 132
+rect 591 68 655 102
+rect 689 68 849 102
+rect 591 48 849 68
+rect 879 100 943 132
+rect 977 132 989 134
+rect 977 100 1037 132
+rect 879 48 1037 100
 << pdiff >>
-rect 58 299 137 309
-rect 58 282 64 299
-rect 81 282 137 299
-rect 58 225 137 282
-rect 152 243 281 309
-rect 152 226 184 243
-rect 201 226 281 243
-rect 152 225 281 226
-rect 296 299 425 309
-rect 296 282 328 299
-rect 345 282 425 299
-rect 296 225 425 282
-rect 440 243 519 309
-rect 440 226 472 243
-rect 489 226 519 243
-rect 440 225 519 226
-rect 178 220 207 225
-rect 466 220 495 225
+rect 115 598 273 618
+rect 115 564 127 598
+rect 161 564 273 598
+rect 115 450 273 564
+rect 303 485 561 618
+rect 303 451 367 485
+rect 401 451 561 485
+rect 303 450 561 451
+rect 591 598 849 618
+rect 591 564 655 598
+rect 689 564 849 598
+rect 591 450 849 564
+rect 879 485 1037 618
+rect 879 451 943 485
+rect 977 451 1037 485
+rect 879 450 1037 451
+rect 355 439 413 450
+rect 931 439 989 450
 << ndiffc >>
-rect 88 50 105 67
-rect 328 34 345 51
-rect 472 50 489 67
+rect 175 100 209 134
+rect 655 68 689 102
+rect 943 100 977 134
 << pdiffc >>
-rect 64 282 81 299
-rect 184 226 201 243
-rect 328 282 345 299
-rect 472 226 489 243
+rect 127 564 161 598
+rect 367 451 401 485
+rect 655 564 689 598
+rect 943 451 977 485
 << poly >>
-rect 137 309 152 322
-rect 281 309 296 322
-rect 425 309 440 322
-rect 137 209 152 225
-rect 281 209 296 225
-rect 425 209 440 225
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 416 201 449 209
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 91 305 108
-rect 272 83 305 91
-rect 416 108 449 116
-rect 416 91 424 108
-rect 441 91 449 108
-rect 416 83 449 91
-rect 137 66 152 83
-rect 281 66 296 83
-rect 425 66 440 83
-rect 137 11 152 24
-rect 281 11 296 24
-rect 425 11 440 24
+rect 273 618 303 644
+rect 561 618 591 644
+rect 849 618 879 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 849 418 879 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 849 132 879 165
+rect 273 22 303 48
+rect 561 22 591 48
+rect 849 22 879 48
 << polycont >>
-rect 136 184 153 201
-rect 280 184 297 201
-rect 424 184 441 201
-rect 136 91 153 108
-rect 280 91 297 108
-rect 424 91 441 108
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
 << locali >>
-rect 0 342 576 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 448 342
-rect 465 325 496 342
-rect 513 325 544 342
-rect 561 325 576 342
-rect 0 309 576 325
-rect 56 299 89 309
-rect 56 282 64 299
-rect 81 282 89 299
-rect 56 274 89 282
-rect 320 299 353 309
-rect 320 282 328 299
-rect 345 282 353 299
-rect 320 274 353 282
-rect 176 243 209 251
-rect 176 226 184 243
-rect 201 226 209 243
-rect 464 243 497 251
-rect 464 226 472 243
-rect 489 226 497 243
-rect 178 218 209 226
-rect 466 218 497 226
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 416 201 449 209
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 280 116 297 131
-rect 128 108 161 116
-rect 128 92 136 108
-rect 130 91 136 92
-rect 153 91 161 108
-rect 130 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 91 305 108
-rect 272 83 305 91
-rect 416 108 449 116
-rect 416 91 424 108
-rect 441 91 449 108
-rect 416 83 449 91
-rect 80 67 113 75
-rect 80 50 88 67
-rect 105 50 113 67
-rect 466 67 497 75
-rect 466 66 472 67
-rect 80 42 113 50
-rect 320 51 353 59
-rect 320 34 328 51
-rect 345 34 353 51
-rect 464 50 472 66
-rect 489 50 497 67
-rect 464 42 497 50
-rect 320 24 353 34
-rect 0 9 576 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 448 9
-rect 465 -9 496 9
-rect 513 -9 544 9
-rect 561 -9 576 9
-rect 0 -24 576 -9
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1152 683
+rect 31 618 1121 649
+rect 111 598 177 618
+rect 111 564 127 598
+rect 161 564 177 598
+rect 111 548 177 564
+rect 639 598 705 618
+rect 639 564 655 598
+rect 689 564 705 598
+rect 639 548 705 564
+rect 351 485 417 501
+rect 351 452 367 485
+rect 355 451 367 452
+rect 401 451 417 485
+rect 927 485 993 501
+rect 927 452 943 485
+rect 355 435 417 451
+rect 931 451 943 452
+rect 977 451 993 485
+rect 931 435 993 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 255 215 321 231
+rect 255 184 271 215
+rect 259 181 271 184
+rect 305 181 321 215
+rect 259 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 159 134 225 150
+rect 159 100 175 134
+rect 209 100 225 134
+rect 931 134 993 150
+rect 931 131 943 134
+rect 159 84 225 100
+rect 639 102 705 118
+rect 639 68 655 102
+rect 689 68 705 102
+rect 927 100 943 131
+rect 977 100 993 134
+rect 927 84 993 100
+rect 639 48 705 68
+rect 31 17 1121 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1152 17
 << viali >>
-rect 16 325 33 342
-rect 64 325 81 342
-rect 112 325 129 342
-rect 160 325 177 342
-rect 208 325 225 342
-rect 256 325 273 342
-rect 304 325 321 342
-rect 352 325 369 342
-rect 400 325 417 342
-rect 448 325 465 342
-rect 496 325 513 342
-rect 544 325 561 342
-rect 64 282 81 299
-rect 328 282 345 299
-rect 184 226 201 243
-rect 472 226 489 243
-rect 136 184 153 201
-rect 280 184 297 201
-rect 424 184 441 201
-rect 280 131 297 148
-rect 136 91 153 108
-rect 424 91 441 108
-rect 88 50 105 67
-rect 328 34 345 51
-rect 472 50 489 67
-rect 16 -9 33 9
-rect 64 -9 81 9
-rect 112 -9 129 9
-rect 160 -9 177 9
-rect 208 -9 225 9
-rect 256 -9 273 9
-rect 304 -9 321 9
-rect 352 -9 369 9
-rect 400 -9 417 9
-rect 448 -9 465 9
-rect 496 -9 513 9
-rect 544 -9 561 9
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 895 649 929 683
+rect 991 649 1025 683
+rect 1087 649 1121 683
+rect 127 564 161 598
+rect 655 564 689 598
+rect 367 451 401 485
+rect 943 451 977 485
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+rect 175 100 209 134
+rect 655 68 689 102
+rect 943 100 977 134
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
+rect 895 -17 929 17
+rect 991 -17 1025 17
+rect 1087 -17 1121 17
 << metal1 >>
-rect 0 342 576 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 448 342
-rect 465 325 496 342
-rect 513 325 544 342
-rect 561 325 576 342
-rect 0 309 576 325
-rect 58 299 87 309
-rect 58 282 64 299
-rect 81 282 87 299
-rect 58 276 87 282
-rect 322 299 351 309
-rect 322 282 328 299
-rect 345 282 351 299
-rect 322 276 351 282
-rect 178 243 207 249
-rect 178 226 184 243
-rect 201 226 207 243
-rect 178 220 207 226
-rect 466 243 495 249
-rect 466 226 472 243
-rect 489 226 495 243
-rect 466 220 495 226
-rect 130 201 159 207
-rect 130 184 136 201
-rect 153 184 159 201
-rect 130 178 159 184
-rect 137 114 151 178
-rect 130 108 159 114
-rect 130 91 136 108
-rect 153 91 159 108
-rect 130 85 159 91
-rect 185 106 199 220
-rect 274 201 303 207
-rect 274 184 280 201
-rect 297 184 303 201
-rect 274 178 303 184
-rect 418 201 447 207
-rect 418 184 424 201
-rect 441 184 447 201
-rect 418 178 447 184
-rect 281 154 295 178
-rect 274 148 303 154
-rect 274 131 280 148
-rect 297 131 303 148
-rect 274 125 303 131
-rect 425 114 439 178
-rect 418 108 447 114
-rect 418 106 424 108
-rect 185 92 424 106
-rect 82 67 111 73
-rect 82 50 88 67
-rect 105 66 111 67
-rect 185 66 199 92
-rect 418 91 424 92
-rect 441 91 447 108
-rect 418 85 447 91
-rect 473 73 487 220
-rect 105 52 199 66
-rect 466 67 495 73
-rect 105 50 111 52
-rect 82 44 111 50
-rect 322 51 351 57
-rect 322 34 328 51
-rect 345 34 351 51
-rect 466 50 472 67
-rect 489 50 495 67
-rect 466 44 495 50
-rect 322 24 351 34
-rect 0 9 576 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 448 9
-rect 465 -9 496 9
-rect 513 -9 544 9
-rect 561 -9 576 9
-rect 0 -24 576 -9
+rect 0 683 1152 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1152 683
+rect 0 618 1152 649
+rect 115 598 173 618
+rect 115 564 127 598
+rect 161 564 173 598
+rect 115 552 173 564
+rect 643 598 701 618
+rect 643 564 655 598
+rect 689 564 701 598
+rect 643 552 701 564
+rect 355 485 413 497
+rect 355 482 367 485
+rect 178 454 367 482
+rect 178 146 206 454
+rect 355 451 367 454
+rect 401 482 413 485
+rect 931 485 989 497
+rect 401 454 878 482
+rect 401 451 413 454
+rect 355 439 413 451
+rect 850 414 878 454
+rect 931 451 943 485
+rect 977 451 989 485
+rect 931 439 989 451
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 368 317 402
+rect 259 356 317 368
+rect 547 402 605 414
+rect 547 368 559 402
+rect 593 368 605 402
+rect 547 356 605 368
+rect 835 402 893 414
+rect 835 368 847 402
+rect 881 368 893 402
+rect 835 356 893 368
+rect 274 227 302 356
+rect 562 227 590 356
+rect 850 227 878 356
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 181 317 215
+rect 259 169 317 181
+rect 547 215 605 227
+rect 547 181 559 215
+rect 593 181 605 215
+rect 547 169 605 181
+rect 835 215 893 227
+rect 835 181 847 215
+rect 881 181 893 215
+rect 835 169 893 181
+rect 946 146 974 439
+rect 163 134 221 146
+rect 163 100 175 134
+rect 209 100 221 134
+rect 931 134 989 146
+rect 163 88 221 100
+rect 643 102 701 114
+rect 643 68 655 102
+rect 689 68 701 102
+rect 931 100 943 134
+rect 977 100 989 134
+rect 931 88 989 100
+rect 643 48 701 68
+rect 0 17 1152 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1152 17
+rect 0 -48 1152 -17
 << labels >>
-rlabel locali 0 309 576 357 0 VDD
+rlabel metal1 0 618 1152 714 0 VDD
 port 1 se
-rlabel metal1 0 309 576 357 0 VDD
+rlabel metal1 0 618 1152 714 0 VDD
 port 2 se
-rlabel locali 0 -24 576 24 0 GND
+rlabel metal1 0 -48 1152 48 0 GND
 port 3 se
-rlabel metal1 0 -24 576 24 0 GND
+rlabel metal1 0 -48 1152 48 0 GND
 port 4 se
-rlabel metal1 466 44 495 73 0 Y
+rlabel metal1 931 88 989 146 0 Y
 port 5 se
-rlabel metal1 473 73 487 220 0 Y
+rlabel metal1 946 146 974 439 0 Y
 port 6 se
-rlabel metal1 466 220 495 249 0 Y
+rlabel metal1 931 439 989 497 0 Y
 port 7 se
-rlabel metal1 130 85 159 114 0 A
+rlabel metal1 547 169 605 227 0 B
 port 8 se
-rlabel metal1 137 114 151 178 0 A
+rlabel metal1 562 227 590 356 0 B
 port 9 se
-rlabel metal1 130 178 159 207 0 A
+rlabel metal1 547 356 605 414 0 B
 port 10 se
-rlabel metal1 274 125 303 154 0 B
+rlabel metal1 259 169 317 227 0 A
 port 11 se
-rlabel metal1 281 154 295 178 0 B
+rlabel metal1 274 227 302 356 0 A
 port 12 se
-rlabel metal1 274 178 303 207 0 B
+rlabel metal1 259 356 317 414 0 A
 port 13 se
+rlabel locali 0 -17 1152 17 4 GND
+port 3 se
+rlabel locali 31 17 1121 48 4 GND
+port 3 se
+rlabel locali 0 649 1152 683 4 VDD
+port 1 se
+rlabel locali 31 618 1121 649 4 VDD
+port 1 se
 << properties >>
-string FIXED_BBOX 0 0 576 333
+string FIXED_BBOX 0 0 1152 666
 << end >>
diff --git a/cells/mag/AND2X1.mag.beforemagic b/cells/mag/AND2X1.mag.beforemagic
new file mode 100644
index 0000000..62d95c8
--- /dev/null
+++ b/cells/mag/AND2X1.mag.beforemagic
@@ -0,0 +1,352 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1624752538
+<< nwell >>
+rect 0 358 1152 666
+<< nmos >>
+rect 273 48 303 132
+rect 561 48 591 132
+rect 849 48 879 132
+<< pmos >>
+rect 273 450 303 618
+rect 561 450 591 618
+rect 849 450 879 618
+<< ndiff >>
+rect 163 134 221 146
+rect 163 132 175 134
+rect 115 100 175 132
+rect 209 132 221 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 209 100 273 132
+rect 115 48 273 100
+rect 303 48 561 132
+rect 591 102 849 132
+rect 591 68 655 102
+rect 689 68 849 102
+rect 591 48 849 68
+rect 879 100 943 132
+rect 977 132 989 134
+rect 977 100 1037 132
+rect 879 48 1037 100
+<< pdiff >>
+rect 115 598 273 618
+rect 115 564 127 598
+rect 161 564 273 598
+rect 115 450 273 564
+rect 303 485 561 618
+rect 303 451 367 485
+rect 401 451 561 485
+rect 303 450 561 451
+rect 591 598 849 618
+rect 591 564 655 598
+rect 689 564 849 598
+rect 591 450 849 564
+rect 879 485 1037 618
+rect 879 451 943 485
+rect 977 451 1037 485
+rect 879 450 1037 451
+rect 355 439 413 450
+rect 931 439 989 450
+<< ndiffc >>
+rect 175 100 209 134
+rect 655 68 689 102
+rect 943 100 977 134
+<< pdiffc >>
+rect 127 564 161 598
+rect 367 451 401 485
+rect 655 564 689 598
+rect 943 451 977 485
+<< poly >>
+rect 273 618 303 644
+rect 561 618 591 644
+rect 849 618 879 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 849 418 879 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 849 132 879 165
+rect 273 22 303 48
+rect 561 22 591 48
+rect 849 22 879 48
+<< polycont >>
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+<< locali >>
+rect 0 683 1152 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1152 683
+rect 0 618 1152 649
+rect 111 598 177 618
+rect 111 564 127 598
+rect 161 564 177 598
+rect 111 548 177 564
+rect 639 598 705 618
+rect 639 564 655 598
+rect 689 564 705 598
+rect 639 548 705 564
+rect 351 485 417 501
+rect 351 452 367 485
+rect 355 451 367 452
+rect 401 451 417 485
+rect 927 485 993 501
+rect 927 452 943 485
+rect 355 435 417 451
+rect 931 451 943 452
+rect 977 451 993 485
+rect 931 435 993 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 255 215 321 231
+rect 255 184 271 215
+rect 259 181 271 184
+rect 305 181 321 215
+rect 259 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 159 134 225 150
+rect 159 100 175 134
+rect 209 100 225 134
+rect 931 134 993 150
+rect 931 131 943 134
+rect 159 84 225 100
+rect 639 102 705 118
+rect 639 68 655 102
+rect 689 68 705 102
+rect 927 100 943 131
+rect 977 100 993 134
+rect 927 84 993 100
+rect 639 48 705 68
+rect 0 17 1152 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1152 17
+rect 0 -48 1152 -17
+<< viali >>
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 895 649 929 683
+rect 991 649 1025 683
+rect 1087 649 1121 683
+rect 127 564 161 598
+rect 655 564 689 598
+rect 367 451 401 485
+rect 943 451 977 485
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+rect 175 100 209 134
+rect 655 68 689 102
+rect 943 100 977 134
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
+rect 895 -17 929 17
+rect 991 -17 1025 17
+rect 1087 -17 1121 17
+<< metal1 >>
+rect 0 683 1152 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1152 683
+rect 0 618 1152 649
+rect 115 598 173 618
+rect 115 564 127 598
+rect 161 564 173 598
+rect 115 552 173 564
+rect 643 598 701 618
+rect 643 564 655 598
+rect 689 564 701 598
+rect 643 552 701 564
+rect 355 485 413 497
+rect 355 482 367 485
+rect 178 454 367 482
+rect 178 146 206 454
+rect 355 451 367 454
+rect 401 482 413 485
+rect 931 485 989 497
+rect 401 454 878 482
+rect 401 451 413 454
+rect 355 439 413 451
+rect 850 414 878 454
+rect 931 451 943 485
+rect 977 451 989 485
+rect 931 439 989 451
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 368 317 402
+rect 259 356 317 368
+rect 547 402 605 414
+rect 547 368 559 402
+rect 593 368 605 402
+rect 547 356 605 368
+rect 835 402 893 414
+rect 835 368 847 402
+rect 881 368 893 402
+rect 835 356 893 368
+rect 274 227 302 356
+rect 562 227 590 356
+rect 850 227 878 356
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 181 317 215
+rect 259 169 317 181
+rect 547 215 605 227
+rect 547 181 559 215
+rect 593 181 605 215
+rect 547 169 605 181
+rect 835 215 893 227
+rect 835 181 847 215
+rect 881 181 893 215
+rect 835 169 893 181
+rect 946 146 974 439
+rect 163 134 221 146
+rect 163 100 175 134
+rect 209 100 221 134
+rect 931 134 989 146
+rect 163 88 221 100
+rect 643 102 701 114
+rect 643 68 655 102
+rect 689 68 701 102
+rect 931 100 943 134
+rect 977 100 989 134
+rect 931 88 989 100
+rect 643 48 701 68
+rect 0 17 1152 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1152 17
+rect 0 -48 1152 -17
+<< labels >>
+rlabel locali 0 618 1152 714 0 VDD
+port 1 se
+rlabel metal1 0 618 1152 714 0 VDD
+port 2 se
+rlabel locali 0 -48 1152 48 0 GND
+port 3 se
+rlabel metal1 0 -48 1152 48 0 GND
+port 4 se
+rlabel metal1 931 88 989 146 0 Y
+port 5 se
+rlabel metal1 946 146 974 439 0 Y
+port 6 se
+rlabel metal1 931 439 989 497 0 Y
+port 7 se
+rlabel metal1 547 169 605 227 0 B
+port 8 se
+rlabel metal1 562 227 590 356 0 B
+port 9 se
+rlabel metal1 547 356 605 414 0 B
+port 10 se
+rlabel metal1 259 169 317 227 0 A
+port 11 se
+rlabel metal1 274 227 302 356 0 A
+port 12 se
+rlabel metal1 259 356 317 414 0 A
+port 13 se
+<< properties >>
+string FIXED_BBOX 0 0 1152 666
+<< end >>
diff --git a/cells/mag/AND2X2.mag b/cells/mag/AND2X2.mag
index c747170..e144470 100644
--- a/cells/mag/AND2X2.mag
+++ b/cells/mag/AND2X2.mag
@@ -1,349 +1,351 @@
 magic
 tech sky130A
-timestamp 1624702476
+magscale 1 2
+timestamp 1624887577
+<< checkpaint >>
+rect -1260 -1374 11260 2038
 << nwell >>
-rect 0 179 576 333
+rect 0 358 1152 666
 << nmos >>
-rect 137 24 152 66
-rect 281 24 296 66
-rect 425 24 440 66
+rect 273 48 303 132
+rect 561 48 591 132
+rect 849 48 879 132
 << pmos >>
-rect 137 225 152 309
-rect 281 225 296 309
-rect 425 225 440 309
+rect 273 450 303 618
+rect 561 450 591 618
+rect 849 450 879 618
 << ndiff >>
-rect 82 67 111 73
-rect 82 66 88 67
-rect 58 50 88 66
-rect 105 66 111 67
-rect 466 67 495 73
-rect 466 66 472 67
-rect 105 50 137 66
-rect 58 24 137 50
-rect 152 24 281 66
-rect 296 51 425 66
-rect 296 34 328 51
-rect 345 34 425 51
-rect 296 24 425 34
-rect 440 50 472 66
-rect 489 66 495 67
-rect 489 50 519 66
-rect 440 24 519 50
+rect 163 134 221 146
+rect 163 132 175 134
+rect 115 100 175 132
+rect 209 132 221 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 209 100 273 132
+rect 115 48 273 100
+rect 303 48 561 132
+rect 591 102 849 132
+rect 591 68 655 102
+rect 689 68 849 102
+rect 591 48 849 68
+rect 879 100 943 132
+rect 977 132 989 134
+rect 977 100 1037 132
+rect 879 48 1037 100
 << pdiff >>
-rect 58 299 137 309
-rect 58 282 64 299
-rect 81 282 137 299
-rect 58 225 137 282
-rect 152 243 281 309
-rect 152 226 184 243
-rect 201 226 281 243
-rect 152 225 281 226
-rect 296 299 425 309
-rect 296 282 328 299
-rect 345 282 425 299
-rect 296 225 425 282
-rect 440 243 519 309
-rect 440 226 472 243
-rect 489 226 519 243
-rect 440 225 519 226
-rect 178 220 207 225
-rect 466 220 495 225
+rect 115 598 273 618
+rect 115 564 127 598
+rect 161 564 273 598
+rect 115 450 273 564
+rect 303 485 561 618
+rect 303 451 367 485
+rect 401 451 561 485
+rect 303 450 561 451
+rect 591 598 849 618
+rect 591 564 655 598
+rect 689 564 849 598
+rect 591 450 849 564
+rect 879 485 1037 618
+rect 879 451 943 485
+rect 977 451 1037 485
+rect 879 450 1037 451
+rect 355 439 413 450
+rect 931 439 989 450
 << ndiffc >>
-rect 88 50 105 67
-rect 328 34 345 51
-rect 472 50 489 67
+rect 175 100 209 134
+rect 655 68 689 102
+rect 943 100 977 134
 << pdiffc >>
-rect 64 282 81 299
-rect 184 226 201 243
-rect 328 282 345 299
-rect 472 226 489 243
+rect 127 564 161 598
+rect 367 451 401 485
+rect 655 564 689 598
+rect 943 451 977 485
 << poly >>
-rect 137 309 152 322
-rect 281 309 296 322
-rect 425 309 440 322
-rect 137 209 152 225
-rect 281 209 296 225
-rect 425 209 440 225
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 416 201 449 209
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 91 305 108
-rect 272 83 305 91
-rect 416 108 449 116
-rect 416 91 424 108
-rect 441 91 449 108
-rect 416 83 449 91
-rect 137 66 152 83
-rect 281 66 296 83
-rect 425 66 440 83
-rect 137 11 152 24
-rect 281 11 296 24
-rect 425 11 440 24
+rect 273 618 303 644
+rect 561 618 591 644
+rect 849 618 879 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 849 418 879 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 849 132 879 165
+rect 273 22 303 48
+rect 561 22 591 48
+rect 849 22 879 48
 << polycont >>
-rect 136 184 153 201
-rect 280 184 297 201
-rect 424 184 441 201
-rect 136 91 153 108
-rect 280 91 297 108
-rect 424 91 441 108
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
 << locali >>
-rect 0 342 576 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 448 342
-rect 465 325 496 342
-rect 513 325 544 342
-rect 561 325 576 342
-rect 0 309 576 325
-rect 56 299 89 309
-rect 56 282 64 299
-rect 81 282 89 299
-rect 56 274 89 282
-rect 320 299 353 309
-rect 320 282 328 299
-rect 345 282 353 299
-rect 320 274 353 282
-rect 176 243 209 251
-rect 176 226 184 243
-rect 201 226 209 243
-rect 464 243 497 251
-rect 464 226 472 243
-rect 489 226 497 243
-rect 178 218 209 226
-rect 466 218 497 226
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 416 201 449 209
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 128 108 161 116
-rect 128 92 136 108
-rect 130 91 136 92
-rect 153 91 161 108
-rect 130 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 91 305 108
-rect 272 83 305 91
-rect 416 108 449 116
-rect 416 91 424 108
-rect 441 91 449 108
-rect 416 83 449 91
-rect 80 67 113 75
-rect 80 50 88 67
-rect 105 50 113 67
-rect 466 67 497 75
-rect 466 66 472 67
-rect 80 42 113 50
-rect 320 51 353 59
-rect 320 34 328 51
-rect 345 34 353 51
-rect 464 50 472 66
-rect 489 50 497 67
-rect 464 42 497 50
-rect 320 24 353 34
-rect 0 9 576 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 448 9
-rect 465 -9 496 9
-rect 513 -9 544 9
-rect 561 -9 576 9
-rect 0 -24 576 -9
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1152 683
+rect 31 618 1121 649
+rect 111 598 177 618
+rect 111 564 127 598
+rect 161 564 177 598
+rect 111 548 177 564
+rect 639 598 705 618
+rect 639 564 655 598
+rect 689 564 705 598
+rect 639 548 705 564
+rect 351 485 417 501
+rect 351 452 367 485
+rect 355 451 367 452
+rect 401 451 417 485
+rect 927 485 993 501
+rect 927 452 943 485
+rect 355 435 417 451
+rect 931 451 943 452
+rect 977 451 993 485
+rect 931 435 993 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 559 231 593 352
+rect 255 215 321 231
+rect 255 184 271 215
+rect 259 181 271 184
+rect 305 181 321 215
+rect 259 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 159 134 225 150
+rect 159 100 175 134
+rect 209 100 225 134
+rect 931 134 993 150
+rect 931 131 943 134
+rect 159 84 225 100
+rect 639 102 705 118
+rect 639 68 655 102
+rect 689 68 705 102
+rect 927 100 943 131
+rect 977 100 993 134
+rect 927 84 993 100
+rect 639 48 705 68
+rect 31 17 1121 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1152 17
 << viali >>
-rect 16 325 33 342
-rect 64 325 81 342
-rect 112 325 129 342
-rect 160 325 177 342
-rect 208 325 225 342
-rect 256 325 273 342
-rect 304 325 321 342
-rect 352 325 369 342
-rect 400 325 417 342
-rect 448 325 465 342
-rect 496 325 513 342
-rect 544 325 561 342
-rect 64 282 81 299
-rect 328 282 345 299
-rect 184 226 201 243
-rect 472 226 489 243
-rect 136 184 153 201
-rect 280 184 297 201
-rect 424 184 441 201
-rect 136 91 153 108
-rect 280 91 297 108
-rect 424 91 441 108
-rect 88 50 105 67
-rect 328 34 345 51
-rect 472 50 489 67
-rect 16 -9 33 9
-rect 64 -9 81 9
-rect 112 -9 129 9
-rect 160 -9 177 9
-rect 208 -9 225 9
-rect 256 -9 273 9
-rect 304 -9 321 9
-rect 352 -9 369 9
-rect 400 -9 417 9
-rect 448 -9 465 9
-rect 496 -9 513 9
-rect 544 -9 561 9
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 895 649 929 683
+rect 991 649 1025 683
+rect 1087 649 1121 683
+rect 127 564 161 598
+rect 655 564 689 598
+rect 367 451 401 485
+rect 943 451 977 485
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 271 181 305 215
+rect 847 181 881 215
+rect 175 100 209 134
+rect 655 68 689 102
+rect 943 100 977 134
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
+rect 895 -17 929 17
+rect 991 -17 1025 17
+rect 1087 -17 1121 17
 << metal1 >>
-rect 0 342 576 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 448 342
-rect 465 325 496 342
-rect 513 325 544 342
-rect 561 325 576 342
-rect 0 309 576 325
-rect 58 299 87 309
-rect 58 282 64 299
-rect 81 282 87 299
-rect 58 276 87 282
-rect 322 299 351 309
-rect 322 282 328 299
-rect 345 282 351 299
-rect 322 276 351 282
-rect 178 243 207 249
-rect 178 241 184 243
-rect 89 227 184 241
-rect 89 73 103 227
-rect 178 226 184 227
-rect 201 241 207 243
-rect 466 243 495 249
-rect 201 227 439 241
-rect 201 226 207 227
-rect 178 220 207 226
-rect 425 207 439 227
-rect 466 226 472 243
-rect 489 226 495 243
-rect 466 220 495 226
-rect 130 201 159 207
-rect 130 184 136 201
-rect 153 184 159 201
-rect 130 178 159 184
-rect 274 201 303 207
-rect 274 184 280 201
-rect 297 184 303 201
-rect 274 178 303 184
-rect 418 201 447 207
-rect 418 184 424 201
-rect 441 184 447 201
-rect 418 178 447 184
-rect 137 114 151 178
-rect 281 114 295 178
-rect 425 114 439 178
-rect 130 108 159 114
-rect 130 91 136 108
-rect 153 91 159 108
-rect 130 85 159 91
-rect 274 108 303 114
-rect 274 91 280 108
-rect 297 91 303 108
-rect 274 85 303 91
-rect 418 108 447 114
-rect 418 91 424 108
-rect 441 91 447 108
-rect 418 85 447 91
-rect 473 73 487 220
-rect 82 67 111 73
-rect 82 50 88 67
-rect 105 50 111 67
-rect 466 67 495 73
-rect 82 44 111 50
-rect 322 51 351 57
-rect 322 34 328 51
-rect 345 34 351 51
-rect 466 50 472 67
-rect 489 50 495 67
-rect 466 44 495 50
-rect 322 24 351 34
-rect 0 9 576 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 448 9
-rect 465 -9 496 9
-rect 513 -9 544 9
-rect 561 -9 576 9
-rect 0 -24 576 -9
+rect 0 683 1152 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1152 683
+rect 0 618 1152 649
+rect 115 598 173 618
+rect 115 564 127 598
+rect 161 564 173 598
+rect 115 552 173 564
+rect 643 598 701 618
+rect 643 564 655 598
+rect 689 564 701 598
+rect 643 552 701 564
+rect 355 485 413 497
+rect 355 451 367 485
+rect 401 451 413 485
+rect 355 439 413 451
+rect 931 485 989 497
+rect 931 451 943 485
+rect 977 451 989 485
+rect 931 439 989 451
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 368 317 402
+rect 259 356 317 368
+rect 274 227 302 356
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 181 317 215
+rect 259 169 317 181
+rect 370 212 398 439
+rect 547 402 605 414
+rect 547 368 559 402
+rect 593 368 605 402
+rect 547 356 605 368
+rect 835 402 893 414
+rect 835 368 847 402
+rect 881 368 893 402
+rect 835 356 893 368
+rect 850 227 878 356
+rect 835 215 893 227
+rect 835 212 847 215
+rect 370 184 847 212
+rect 163 134 221 146
+rect 163 100 175 134
+rect 209 131 221 134
+rect 370 131 398 184
+rect 835 181 847 184
+rect 881 181 893 215
+rect 835 169 893 181
+rect 946 146 974 439
+rect 209 103 398 131
+rect 931 134 989 146
+rect 209 100 221 103
+rect 163 88 221 100
+rect 643 102 701 114
+rect 643 68 655 102
+rect 689 68 701 102
+rect 931 100 943 134
+rect 977 100 989 134
+rect 931 88 989 100
+rect 643 48 701 68
+rect 0 17 1152 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1152 17
+rect 0 -48 1152 -17
 << labels >>
-rlabel locali 0 309 576 357 0 VDD
+rlabel metal1 0 618 1152 714 0 VDD
 port 1 se
-rlabel metal1 0 309 576 357 0 VDD
+rlabel metal1 0 618 1152 714 0 VDD
 port 2 se
-rlabel locali 0 -24 576 24 0 GND
+rlabel metal1 0 -48 1152 48 0 GND
 port 3 se
-rlabel metal1 0 -24 576 24 0 GND
+rlabel metal1 0 -48 1152 48 0 GND
 port 4 se
-rlabel metal1 466 44 495 73 0 Y
+rlabel metal1 931 88 989 146 0 Y
 port 5 se
-rlabel metal1 473 73 487 220 0 Y
+rlabel metal1 946 146 974 439 0 Y
 port 6 se
-rlabel metal1 466 220 495 249 0 Y
+rlabel metal1 931 439 989 497 0 Y
 port 7 se
-rlabel metal1 274 85 303 114 0 B
+rlabel metal1 259 169 317 227 0 A
 port 8 se
-rlabel metal1 281 114 295 178 0 B
+rlabel metal1 274 227 302 356 0 A
 port 9 se
-rlabel metal1 274 178 303 207 0 B
+rlabel metal1 259 356 317 414 0 A
 port 10 se
-rlabel metal1 130 85 159 114 0 A
+rlabel metal1 547 356 605 414 0 B
 port 11 se
-rlabel metal1 137 114 151 178 0 A
-port 12 se
-rlabel metal1 130 178 159 207 0 A
-port 13 se
+rlabel locali 0 -17 1152 17 4 GND
+port 3 se
+rlabel locali 31 17 1121 48 4 GND
+port 3 se
+rlabel locali 0 649 1152 683 4 VDD
+port 1 se
+rlabel locali 31 618 1121 649 4 VDD
+port 1 se
 << properties >>
-string FIXED_BBOX 0 0 576 333
+string FIXED_BBOX 0 0 1152 666
 << end >>
diff --git a/cells/mag/AND2X2.mag.beforemagic b/cells/mag/AND2X2.mag.beforemagic
new file mode 100644
index 0000000..6132062
--- /dev/null
+++ b/cells/mag/AND2X2.mag.beforemagic
@@ -0,0 +1,343 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1624752610
+<< nwell >>
+rect 0 358 1152 666
+<< nmos >>
+rect 273 48 303 132
+rect 561 48 591 132
+rect 849 48 879 132
+<< pmos >>
+rect 273 450 303 618
+rect 561 450 591 618
+rect 849 450 879 618
+<< ndiff >>
+rect 163 134 221 146
+rect 163 132 175 134
+rect 115 100 175 132
+rect 209 132 221 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 209 100 273 132
+rect 115 48 273 100
+rect 303 48 561 132
+rect 591 102 849 132
+rect 591 68 655 102
+rect 689 68 849 102
+rect 591 48 849 68
+rect 879 100 943 132
+rect 977 132 989 134
+rect 977 100 1037 132
+rect 879 48 1037 100
+<< pdiff >>
+rect 115 598 273 618
+rect 115 564 127 598
+rect 161 564 273 598
+rect 115 450 273 564
+rect 303 485 561 618
+rect 303 451 367 485
+rect 401 451 561 485
+rect 303 450 561 451
+rect 591 598 849 618
+rect 591 564 655 598
+rect 689 564 849 598
+rect 591 450 849 564
+rect 879 485 1037 618
+rect 879 451 943 485
+rect 977 451 1037 485
+rect 879 450 1037 451
+rect 355 439 413 450
+rect 931 439 989 450
+<< ndiffc >>
+rect 175 100 209 134
+rect 655 68 689 102
+rect 943 100 977 134
+<< pdiffc >>
+rect 127 564 161 598
+rect 367 451 401 485
+rect 655 564 689 598
+rect 943 451 977 485
+<< poly >>
+rect 273 618 303 644
+rect 561 618 591 644
+rect 849 618 879 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 849 418 879 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 849 132 879 165
+rect 273 22 303 48
+rect 561 22 591 48
+rect 849 22 879 48
+<< polycont >>
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+<< locali >>
+rect 0 683 1152 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1152 683
+rect 0 618 1152 649
+rect 111 598 177 618
+rect 111 564 127 598
+rect 161 564 177 598
+rect 111 548 177 564
+rect 639 598 705 618
+rect 639 564 655 598
+rect 689 564 705 598
+rect 639 548 705 564
+rect 351 485 417 501
+rect 351 452 367 485
+rect 355 451 367 452
+rect 401 451 417 485
+rect 927 485 993 501
+rect 927 452 943 485
+rect 355 435 417 451
+rect 931 451 943 452
+rect 977 451 993 485
+rect 931 435 993 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 559 231 593 352
+rect 255 215 321 231
+rect 255 184 271 215
+rect 259 181 271 184
+rect 305 181 321 215
+rect 259 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 159 134 225 150
+rect 159 100 175 134
+rect 209 100 225 134
+rect 931 134 993 150
+rect 931 131 943 134
+rect 159 84 225 100
+rect 639 102 705 118
+rect 639 68 655 102
+rect 689 68 705 102
+rect 927 100 943 131
+rect 977 100 993 134
+rect 927 84 993 100
+rect 639 48 705 68
+rect 0 17 1152 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1152 17
+rect 0 -48 1152 -17
+<< viali >>
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 895 649 929 683
+rect 991 649 1025 683
+rect 1087 649 1121 683
+rect 127 564 161 598
+rect 655 564 689 598
+rect 367 451 401 485
+rect 943 451 977 485
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 271 181 305 215
+rect 847 181 881 215
+rect 175 100 209 134
+rect 655 68 689 102
+rect 943 100 977 134
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
+rect 895 -17 929 17
+rect 991 -17 1025 17
+rect 1087 -17 1121 17
+<< metal1 >>
+rect 0 683 1152 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1152 683
+rect 0 618 1152 649
+rect 115 598 173 618
+rect 115 564 127 598
+rect 161 564 173 598
+rect 115 552 173 564
+rect 643 598 701 618
+rect 643 564 655 598
+rect 689 564 701 598
+rect 643 552 701 564
+rect 355 485 413 497
+rect 355 451 367 485
+rect 401 451 413 485
+rect 355 439 413 451
+rect 931 485 989 497
+rect 931 451 943 485
+rect 977 451 989 485
+rect 931 439 989 451
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 368 317 402
+rect 259 356 317 368
+rect 274 227 302 356
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 181 317 215
+rect 259 169 317 181
+rect 370 212 398 439
+rect 547 402 605 414
+rect 547 368 559 402
+rect 593 368 605 402
+rect 547 356 605 368
+rect 835 402 893 414
+rect 835 368 847 402
+rect 881 368 893 402
+rect 835 356 893 368
+rect 850 227 878 356
+rect 835 215 893 227
+rect 835 212 847 215
+rect 370 184 847 212
+rect 163 134 221 146
+rect 163 100 175 134
+rect 209 131 221 134
+rect 370 131 398 184
+rect 835 181 847 184
+rect 881 181 893 215
+rect 835 169 893 181
+rect 946 146 974 439
+rect 209 103 398 131
+rect 931 134 989 146
+rect 209 100 221 103
+rect 163 88 221 100
+rect 643 102 701 114
+rect 643 68 655 102
+rect 689 68 701 102
+rect 931 100 943 134
+rect 977 100 989 134
+rect 931 88 989 100
+rect 643 48 701 68
+rect 0 17 1152 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1152 17
+rect 0 -48 1152 -17
+<< labels >>
+rlabel locali 0 618 1152 714 0 VDD
+port 1 se
+rlabel metal1 0 618 1152 714 0 VDD
+port 2 se
+rlabel locali 0 -48 1152 48 0 GND
+port 3 se
+rlabel metal1 0 -48 1152 48 0 GND
+port 4 se
+rlabel metal1 931 88 989 146 0 Y
+port 5 se
+rlabel metal1 946 146 974 439 0 Y
+port 6 se
+rlabel metal1 931 439 989 497 0 Y
+port 7 se
+rlabel metal1 259 169 317 227 0 A
+port 8 se
+rlabel metal1 274 227 302 356 0 A
+port 9 se
+rlabel metal1 259 356 317 414 0 A
+port 10 se
+rlabel metal1 547 356 605 414 0 B
+port 11 se
+<< properties >>
+string FIXED_BBOX 0 0 1152 666
+<< end >>
diff --git a/cells/mag/AOI21X1.mag b/cells/mag/AOI21X1.mag
index 53821ac..24b8616 100644
--- a/cells/mag/AOI21X1.mag
+++ b/cells/mag/AOI21X1.mag
@@ -1,357 +1,368 @@
 magic
 tech sky130A
-timestamp 1624702520
+magscale 1 2
+timestamp 1624887578
+<< checkpaint >>
+rect -1260 -1374 11260 2038
 << nwell >>
-rect 0 179 576 333
+rect 0 358 1152 666
 << nmos >>
-rect 137 24 152 66
-rect 281 24 296 66
-rect 425 24 440 66
+rect 273 48 303 132
+rect 561 48 591 132
+rect 849 48 879 132
 << pmos >>
-rect 137 225 152 309
-rect 281 225 296 309
-rect 425 225 440 309
+rect 273 450 303 618
+rect 561 450 591 618
+rect 849 450 879 618
 << ndiff >>
-rect 58 67 87 73
-rect 58 50 64 67
-rect 81 66 87 67
-rect 466 67 495 73
-rect 466 66 472 67
-rect 81 50 137 66
-rect 58 24 137 50
-rect 152 51 281 66
-rect 152 34 184 51
-rect 201 34 281 51
-rect 152 24 281 34
-rect 296 24 425 66
-rect 440 50 472 66
-rect 489 66 495 67
-rect 489 50 519 66
-rect 440 24 519 50
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 132 173 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 102 561 132
+rect 303 68 367 102
+rect 401 68 561 102
+rect 303 48 561 68
+rect 591 48 849 132
+rect 879 100 943 132
+rect 977 132 989 134
+rect 977 100 1037 132
+rect 879 48 1037 100
 << pdiff >>
-rect 58 243 137 309
-rect 58 226 64 243
-rect 81 226 137 243
-rect 58 225 137 226
-rect 152 243 281 309
-rect 152 226 232 243
-rect 249 226 281 243
-rect 152 225 281 226
-rect 296 299 425 309
-rect 296 282 328 299
-rect 345 282 425 299
-rect 296 225 425 282
-rect 440 243 519 309
-rect 440 226 472 243
-rect 489 226 519 243
-rect 440 225 519 226
-rect 58 220 87 225
-rect 226 220 255 225
-rect 466 220 495 225
+rect 115 485 273 618
+rect 115 451 127 485
+rect 161 451 273 485
+rect 115 450 273 451
+rect 303 485 561 618
+rect 303 451 463 485
+rect 497 451 561 485
+rect 303 450 561 451
+rect 591 598 849 618
+rect 591 564 655 598
+rect 689 564 849 598
+rect 591 450 849 564
+rect 879 485 1037 618
+rect 879 451 943 485
+rect 977 451 1037 485
+rect 879 450 1037 451
+rect 115 439 173 450
+rect 451 439 509 450
+rect 931 439 989 450
 << ndiffc >>
-rect 64 50 81 67
-rect 184 34 201 51
-rect 472 50 489 67
+rect 127 100 161 134
+rect 367 68 401 102
+rect 943 100 977 134
 << pdiffc >>
-rect 64 226 81 243
-rect 232 226 249 243
-rect 328 282 345 299
-rect 472 226 489 243
+rect 127 451 161 485
+rect 463 451 497 485
+rect 655 564 689 598
+rect 943 451 977 485
 << poly >>
-rect 137 309 152 322
-rect 281 309 296 322
-rect 425 309 440 322
-rect 137 209 152 225
-rect 281 209 296 225
-rect 425 209 440 225
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 416 201 449 209
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 91 305 108
-rect 272 83 305 91
-rect 416 108 449 116
-rect 416 91 424 108
-rect 441 91 449 108
-rect 416 83 449 91
-rect 137 66 152 83
-rect 281 66 296 83
-rect 425 66 440 83
-rect 137 11 152 24
-rect 281 11 296 24
-rect 425 11 440 24
+rect 273 618 303 644
+rect 561 618 591 644
+rect 849 618 879 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 849 418 879 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 849 132 879 165
+rect 273 22 303 48
+rect 561 22 591 48
+rect 849 22 879 48
 << polycont >>
-rect 136 184 153 201
-rect 280 184 297 201
-rect 424 184 441 201
-rect 136 91 153 108
-rect 280 91 297 108
-rect 424 91 441 108
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
 << locali >>
-rect 0 342 576 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 448 342
-rect 465 325 496 342
-rect 513 325 544 342
-rect 561 325 576 342
-rect 0 309 576 325
-rect 320 299 353 309
-rect 320 282 328 299
-rect 345 282 353 299
-rect 320 274 353 282
-rect 56 243 89 251
-rect 56 226 64 243
-rect 81 226 89 243
-rect 56 218 89 226
-rect 224 243 257 251
-rect 224 226 232 243
-rect 249 226 257 243
-rect 464 243 497 251
-rect 464 226 472 243
-rect 489 226 497 243
-rect 224 218 255 226
-rect 466 218 497 226
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 416 201 449 209
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 91 305 108
-rect 272 83 305 91
-rect 416 108 449 116
-rect 416 91 424 108
-rect 441 92 449 108
-rect 441 91 447 92
-rect 416 83 447 91
-rect 56 67 89 75
-rect 56 50 64 67
-rect 81 50 89 67
-rect 464 67 497 75
-rect 56 42 89 50
-rect 176 51 209 59
-rect 176 34 184 51
-rect 201 34 209 51
-rect 464 50 472 67
-rect 489 50 497 67
-rect 464 42 497 50
-rect 176 24 209 34
-rect 0 9 576 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 448 9
-rect 465 -9 496 9
-rect 513 -9 544 9
-rect 561 -9 576 9
-rect 0 -24 576 -9
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1152 683
+rect 31 618 1121 649
+rect 639 598 705 618
+rect 639 564 655 598
+rect 689 564 705 598
+rect 639 548 705 564
+rect 111 485 177 501
+rect 111 451 127 485
+rect 161 451 177 485
+rect 111 435 177 451
+rect 447 485 513 501
+rect 447 451 463 485
+rect 497 452 513 485
+rect 927 485 993 501
+rect 927 452 943 485
+rect 497 451 509 452
+rect 447 435 509 451
+rect 931 451 943 452
+rect 977 451 993 485
+rect 931 435 993 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 184 897 215
+rect 881 181 893 184
+rect 831 165 893 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 927 134 993 150
+rect 111 84 177 100
+rect 351 102 417 118
+rect 351 68 367 102
+rect 401 68 417 102
+rect 927 100 943 134
+rect 977 100 993 134
+rect 927 84 993 100
+rect 351 48 417 68
+rect 31 17 1121 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1152 17
 << viali >>
-rect 16 325 33 342
-rect 64 325 81 342
-rect 112 325 129 342
-rect 160 325 177 342
-rect 208 325 225 342
-rect 256 325 273 342
-rect 304 325 321 342
-rect 352 325 369 342
-rect 400 325 417 342
-rect 448 325 465 342
-rect 496 325 513 342
-rect 544 325 561 342
-rect 328 282 345 299
-rect 64 226 81 243
-rect 232 226 249 243
-rect 472 226 489 243
-rect 136 184 153 201
-rect 280 184 297 201
-rect 424 184 441 201
-rect 136 91 153 108
-rect 280 91 297 108
-rect 424 91 441 108
-rect 64 50 81 67
-rect 472 50 489 67
-rect 16 -9 33 9
-rect 64 -9 81 9
-rect 112 -9 129 9
-rect 160 -9 177 9
-rect 208 -9 225 9
-rect 256 -9 273 9
-rect 304 -9 321 9
-rect 352 -9 369 9
-rect 400 -9 417 9
-rect 448 -9 465 9
-rect 496 -9 513 9
-rect 544 -9 561 9
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 895 649 929 683
+rect 991 649 1025 683
+rect 1087 649 1121 683
+rect 655 564 689 598
+rect 127 451 161 485
+rect 463 451 497 485
+rect 943 451 977 485
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+rect 127 100 161 134
+rect 943 100 977 134
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
+rect 895 -17 929 17
+rect 991 -17 1025 17
+rect 1087 -17 1121 17
 << metal1 >>
-rect 0 342 576 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 448 342
-rect 465 325 496 342
-rect 513 325 544 342
-rect 561 325 576 342
-rect 0 309 576 325
-rect 322 299 351 309
-rect 322 282 328 299
-rect 345 282 351 299
-rect 322 276 351 282
-rect 58 243 87 249
-rect 58 226 64 243
-rect 81 226 87 243
-rect 58 220 87 226
-rect 226 243 255 249
-rect 226 226 232 243
-rect 249 241 255 243
-rect 466 243 495 249
-rect 466 241 472 243
-rect 249 227 472 241
-rect 249 226 255 227
-rect 226 220 255 226
-rect 466 226 472 227
-rect 489 226 495 243
-rect 466 220 495 226
-rect 65 73 79 220
-rect 130 201 159 207
-rect 130 184 136 201
-rect 153 184 159 201
-rect 130 178 159 184
-rect 274 201 303 207
-rect 274 184 280 201
-rect 297 184 303 201
-rect 274 178 303 184
-rect 418 201 447 207
-rect 418 184 424 201
-rect 441 184 447 201
-rect 418 178 447 184
-rect 137 114 151 178
-rect 281 114 295 178
-rect 425 114 439 178
-rect 130 108 159 114
-rect 130 91 136 108
-rect 153 91 159 108
-rect 130 85 159 91
-rect 274 108 303 114
-rect 274 91 280 108
-rect 297 91 303 108
-rect 274 85 303 91
-rect 418 108 447 114
-rect 418 91 424 108
-rect 441 91 447 108
-rect 418 85 447 91
-rect 58 67 87 73
-rect 58 50 64 67
-rect 81 66 87 67
-rect 466 67 495 73
-rect 466 66 472 67
-rect 81 52 472 66
-rect 81 50 87 52
-rect 58 44 87 50
-rect 466 50 472 52
-rect 489 50 495 67
-rect 466 44 495 50
-rect 0 9 576 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 448 9
-rect 465 -9 496 9
-rect 513 -9 544 9
-rect 561 -9 576 9
-rect 0 -24 576 -9
+rect 0 683 1152 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1152 683
+rect 0 618 1152 649
+rect 643 598 701 618
+rect 643 564 655 598
+rect 689 564 701 598
+rect 643 552 701 564
+rect 115 485 173 497
+rect 115 451 127 485
+rect 161 451 173 485
+rect 115 439 173 451
+rect 451 485 509 497
+rect 451 451 463 485
+rect 497 482 509 485
+rect 931 485 989 497
+rect 931 482 943 485
+rect 497 454 943 482
+rect 497 451 509 454
+rect 451 439 509 451
+rect 931 451 943 454
+rect 977 451 989 485
+rect 931 439 989 451
+rect 130 146 158 439
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 368 317 402
+rect 259 356 317 368
+rect 547 402 605 414
+rect 547 368 559 402
+rect 593 368 605 402
+rect 547 356 605 368
+rect 835 402 893 414
+rect 835 368 847 402
+rect 881 368 893 402
+rect 835 356 893 368
+rect 274 227 302 356
+rect 562 227 590 356
+rect 850 227 878 356
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 181 317 215
+rect 259 169 317 181
+rect 547 215 605 227
+rect 547 181 559 215
+rect 593 181 605 215
+rect 547 169 605 181
+rect 835 215 893 227
+rect 835 181 847 215
+rect 881 181 893 215
+rect 835 169 893 181
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 131 173 134
+rect 931 134 989 146
+rect 931 131 943 134
+rect 161 103 943 131
+rect 161 100 173 103
+rect 115 88 173 100
+rect 931 100 943 103
+rect 977 100 989 134
+rect 931 88 989 100
+rect 0 17 1152 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1152 17
+rect 0 -48 1152 -17
 << labels >>
-rlabel locali 0 309 576 357 0 VDD
+rlabel metal1 0 618 1152 714 0 VDD
 port 1 se
-rlabel metal1 0 309 576 357 0 VDD
+rlabel metal1 0 618 1152 714 0 VDD
 port 2 se
-rlabel locali 0 -24 576 24 0 GND
+rlabel metal1 0 -48 1152 48 0 GND
 port 3 se
-rlabel metal1 0 -24 576 24 0 GND
+rlabel metal1 0 -48 1152 48 0 GND
 port 4 se
-rlabel metal1 58 44 87 52 0 Y
+rlabel metal1 115 88 173 103 0 Y
 port 5 se
-rlabel metal1 466 44 495 52 0 Y
+rlabel metal1 931 88 989 103 0 Y
 port 6 se
-rlabel metal1 58 52 495 66 0 Y
+rlabel metal1 115 103 989 131 0 Y
 port 7 se
-rlabel metal1 58 66 87 73 0 Y
+rlabel metal1 115 131 173 146 0 Y
 port 8 se
-rlabel metal1 466 66 495 73 0 Y
+rlabel metal1 931 131 989 146 0 Y
 port 9 se
-rlabel metal1 65 73 79 220 0 Y
+rlabel metal1 130 146 158 439 0 Y
 port 10 se
-rlabel metal1 58 220 87 249 0 Y
+rlabel metal1 115 439 173 497 0 Y
 port 11 se
-rlabel metal1 130 85 159 114 0 C
+rlabel metal1 547 169 605 227 0 A
 port 12 se
-rlabel metal1 137 114 151 178 0 C
+rlabel metal1 562 227 590 356 0 A
 port 13 se
-rlabel metal1 130 178 159 207 0 C
+rlabel metal1 547 356 605 414 0 A
 port 14 se
-rlabel metal1 418 85 447 114 0 B
+rlabel metal1 259 169 317 227 0 C
 port 15 se
-rlabel metal1 425 114 439 178 0 B
+rlabel metal1 274 227 302 356 0 C
 port 16 se
-rlabel metal1 418 178 447 207 0 B
+rlabel metal1 259 356 317 414 0 C
 port 17 se
-rlabel metal1 274 85 303 114 0 A
+rlabel metal1 835 169 893 227 0 B
 port 18 se
-rlabel metal1 281 114 295 178 0 A
+rlabel metal1 850 227 878 356 0 B
 port 19 se
-rlabel metal1 274 178 303 207 0 A
+rlabel metal1 835 356 893 414 0 B
 port 20 se
+rlabel locali 0 -17 1152 17 4 GND
+port 3 se
+rlabel locali 31 17 1121 48 4 GND
+port 3 se
+rlabel locali 0 649 1152 683 4 VDD
+port 1 se
+rlabel locali 31 618 1121 649 4 VDD
+port 1 se
 << properties >>
-string FIXED_BBOX 0 0 576 333
+string FIXED_BBOX 0 0 1152 666
 << end >>
diff --git a/cells/mag/AOI21X1.mag.beforemagic b/cells/mag/AOI21X1.mag.beforemagic
new file mode 100644
index 0000000..a1d350c
--- /dev/null
+++ b/cells/mag/AOI21X1.mag.beforemagic
@@ -0,0 +1,360 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1624752678
+<< nwell >>
+rect 0 358 1152 666
+<< nmos >>
+rect 273 48 303 132
+rect 561 48 591 132
+rect 849 48 879 132
+<< pmos >>
+rect 273 450 303 618
+rect 561 450 591 618
+rect 849 450 879 618
+<< ndiff >>
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 132 173 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 102 561 132
+rect 303 68 367 102
+rect 401 68 561 102
+rect 303 48 561 68
+rect 591 48 849 132
+rect 879 100 943 132
+rect 977 132 989 134
+rect 977 100 1037 132
+rect 879 48 1037 100
+<< pdiff >>
+rect 115 485 273 618
+rect 115 451 127 485
+rect 161 451 273 485
+rect 115 450 273 451
+rect 303 485 561 618
+rect 303 451 463 485
+rect 497 451 561 485
+rect 303 450 561 451
+rect 591 598 849 618
+rect 591 564 655 598
+rect 689 564 849 598
+rect 591 450 849 564
+rect 879 485 1037 618
+rect 879 451 943 485
+rect 977 451 1037 485
+rect 879 450 1037 451
+rect 115 439 173 450
+rect 451 439 509 450
+rect 931 439 989 450
+<< ndiffc >>
+rect 127 100 161 134
+rect 367 68 401 102
+rect 943 100 977 134
+<< pdiffc >>
+rect 127 451 161 485
+rect 463 451 497 485
+rect 655 564 689 598
+rect 943 451 977 485
+<< poly >>
+rect 273 618 303 644
+rect 561 618 591 644
+rect 849 618 879 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 849 418 879 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 849 132 879 165
+rect 273 22 303 48
+rect 561 22 591 48
+rect 849 22 879 48
+<< polycont >>
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+<< locali >>
+rect 0 683 1152 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1152 683
+rect 0 618 1152 649
+rect 639 598 705 618
+rect 639 564 655 598
+rect 689 564 705 598
+rect 639 548 705 564
+rect 111 485 177 501
+rect 111 451 127 485
+rect 161 451 177 485
+rect 111 435 177 451
+rect 447 485 513 501
+rect 447 451 463 485
+rect 497 452 513 485
+rect 927 485 993 501
+rect 927 452 943 485
+rect 497 451 509 452
+rect 447 435 509 451
+rect 931 451 943 452
+rect 977 451 993 485
+rect 931 435 993 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 184 897 215
+rect 881 181 893 184
+rect 831 165 893 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 927 134 993 150
+rect 111 84 177 100
+rect 351 102 417 118
+rect 351 68 367 102
+rect 401 68 417 102
+rect 927 100 943 134
+rect 977 100 993 134
+rect 927 84 993 100
+rect 351 48 417 68
+rect 0 17 1152 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1152 17
+rect 0 -48 1152 -17
+<< viali >>
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 895 649 929 683
+rect 991 649 1025 683
+rect 1087 649 1121 683
+rect 655 564 689 598
+rect 127 451 161 485
+rect 463 451 497 485
+rect 943 451 977 485
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+rect 127 100 161 134
+rect 943 100 977 134
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
+rect 895 -17 929 17
+rect 991 -17 1025 17
+rect 1087 -17 1121 17
+<< metal1 >>
+rect 0 683 1152 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1152 683
+rect 0 618 1152 649
+rect 643 598 701 618
+rect 643 564 655 598
+rect 689 564 701 598
+rect 643 552 701 564
+rect 115 485 173 497
+rect 115 451 127 485
+rect 161 451 173 485
+rect 115 439 173 451
+rect 451 485 509 497
+rect 451 451 463 485
+rect 497 482 509 485
+rect 931 485 989 497
+rect 931 482 943 485
+rect 497 454 943 482
+rect 497 451 509 454
+rect 451 439 509 451
+rect 931 451 943 454
+rect 977 451 989 485
+rect 931 439 989 451
+rect 130 146 158 439
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 368 317 402
+rect 259 356 317 368
+rect 547 402 605 414
+rect 547 368 559 402
+rect 593 368 605 402
+rect 547 356 605 368
+rect 835 402 893 414
+rect 835 368 847 402
+rect 881 368 893 402
+rect 835 356 893 368
+rect 274 227 302 356
+rect 562 227 590 356
+rect 850 227 878 356
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 181 317 215
+rect 259 169 317 181
+rect 547 215 605 227
+rect 547 181 559 215
+rect 593 181 605 215
+rect 547 169 605 181
+rect 835 215 893 227
+rect 835 181 847 215
+rect 881 181 893 215
+rect 835 169 893 181
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 131 173 134
+rect 931 134 989 146
+rect 931 131 943 134
+rect 161 103 943 131
+rect 161 100 173 103
+rect 115 88 173 100
+rect 931 100 943 103
+rect 977 100 989 134
+rect 931 88 989 100
+rect 0 17 1152 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1152 17
+rect 0 -48 1152 -17
+<< labels >>
+rlabel locali 0 618 1152 714 0 VDD
+port 1 se
+rlabel metal1 0 618 1152 714 0 VDD
+port 2 se
+rlabel locali 0 -48 1152 48 0 GND
+port 3 se
+rlabel metal1 0 -48 1152 48 0 GND
+port 4 se
+rlabel metal1 115 88 173 103 0 Y
+port 5 se
+rlabel metal1 931 88 989 103 0 Y
+port 6 se
+rlabel metal1 115 103 989 131 0 Y
+port 7 se
+rlabel metal1 115 131 173 146 0 Y
+port 8 se
+rlabel metal1 931 131 989 146 0 Y
+port 9 se
+rlabel metal1 130 146 158 439 0 Y
+port 10 se
+rlabel metal1 115 439 173 497 0 Y
+port 11 se
+rlabel metal1 547 169 605 227 0 A
+port 12 se
+rlabel metal1 562 227 590 356 0 A
+port 13 se
+rlabel metal1 547 356 605 414 0 A
+port 14 se
+rlabel metal1 259 169 317 227 0 C
+port 15 se
+rlabel metal1 274 227 302 356 0 C
+port 16 se
+rlabel metal1 259 356 317 414 0 C
+port 17 se
+rlabel metal1 835 169 893 227 0 B
+port 18 se
+rlabel metal1 850 227 878 356 0 B
+port 19 se
+rlabel metal1 835 356 893 414 0 B
+port 20 se
+<< properties >>
+string FIXED_BBOX 0 0 1152 666
+<< end >>
diff --git a/cells/mag/AOI22X1.mag b/cells/mag/AOI22X1.mag
index 4f1ae57..ae304d0 100644
--- a/cells/mag/AOI22X1.mag
+++ b/cells/mag/AOI22X1.mag
@@ -1,440 +1,448 @@
 magic
 tech sky130A
-timestamp 1624702590
+magscale 1 2
+timestamp 1624887579
+<< checkpaint >>
+rect -1260 -1374 11260 2038
 << nwell >>
-rect 0 179 720 333
+rect 0 358 1440 666
 << nmos >>
-rect 137 24 152 66
-rect 281 24 296 66
-rect 425 24 440 66
-rect 569 24 584 66
+rect 273 48 303 132
+rect 561 48 591 132
+rect 849 48 879 132
+rect 1137 48 1167 132
 << pmos >>
-rect 137 225 152 309
-rect 281 225 296 309
-rect 425 225 440 309
-rect 569 225 584 309
+rect 273 450 303 618
+rect 561 450 591 618
+rect 849 450 879 618
+rect 1137 450 1167 618
 << ndiff >>
-rect 82 67 111 73
-rect 82 66 88 67
-rect 58 50 88 66
-rect 105 66 111 67
-rect 610 67 639 73
-rect 610 66 616 67
-rect 105 50 137 66
-rect 58 24 137 50
-rect 152 24 281 66
-rect 296 51 425 66
-rect 296 34 328 51
-rect 345 34 425 51
-rect 296 24 425 34
-rect 440 24 569 66
-rect 584 50 616 66
-rect 633 66 639 67
-rect 633 50 663 66
-rect 584 24 663 50
+rect 163 134 221 146
+rect 163 132 175 134
+rect 115 100 175 132
+rect 209 132 221 134
+rect 1219 134 1277 146
+rect 1219 132 1231 134
+rect 209 100 273 132
+rect 115 48 273 100
+rect 303 48 561 132
+rect 591 102 849 132
+rect 591 68 655 102
+rect 689 68 849 102
+rect 591 48 849 68
+rect 879 48 1137 132
+rect 1167 100 1231 132
+rect 1265 132 1277 134
+rect 1265 100 1325 132
+rect 1167 48 1325 100
 << pdiff >>
-rect 58 256 137 309
-rect 58 239 88 256
-rect 105 239 137 256
-rect 58 225 137 239
-rect 152 299 281 309
-rect 152 282 184 299
-rect 201 282 281 299
-rect 152 225 281 282
-rect 296 283 425 309
-rect 296 266 376 283
-rect 393 266 425 283
-rect 296 225 425 266
-rect 440 243 569 309
-rect 440 226 520 243
-rect 537 226 569 243
-rect 440 225 569 226
-rect 584 283 663 309
-rect 584 266 616 283
-rect 633 266 663 283
-rect 584 225 663 266
-rect 514 220 543 225
+rect 115 485 273 618
+rect 115 451 175 485
+rect 209 451 273 485
+rect 115 450 273 451
+rect 303 598 561 618
+rect 303 564 367 598
+rect 401 564 561 598
+rect 303 450 561 564
+rect 591 485 849 618
+rect 591 451 655 485
+rect 689 451 849 485
+rect 591 450 849 451
+rect 879 485 1137 618
+rect 879 451 1039 485
+rect 1073 451 1137 485
+rect 879 450 1137 451
+rect 1167 566 1325 618
+rect 1167 532 1231 566
+rect 1265 532 1325 566
+rect 1167 450 1325 532
+rect 163 439 221 450
+rect 643 439 701 450
+rect 1027 439 1085 450
 << ndiffc >>
-rect 88 50 105 67
-rect 328 34 345 51
-rect 616 50 633 67
+rect 175 100 209 134
+rect 655 68 689 102
+rect 1231 100 1265 134
 << pdiffc >>
-rect 88 239 105 256
-rect 184 282 201 299
-rect 376 266 393 283
-rect 520 226 537 243
-rect 616 266 633 283
+rect 175 451 209 485
+rect 367 564 401 598
+rect 655 451 689 485
+rect 1039 451 1073 485
+rect 1231 532 1265 566
 << poly >>
-rect 137 309 152 322
-rect 281 309 296 322
-rect 425 309 440 322
-rect 569 309 584 322
-rect 137 209 152 225
-rect 281 209 296 225
-rect 425 209 440 225
-rect 569 209 584 225
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 416 201 449 209
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 560 201 593 209
-rect 560 184 568 201
-rect 585 184 593 201
-rect 560 176 593 184
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 91 305 108
-rect 272 83 305 91
-rect 416 108 449 116
-rect 416 91 424 108
-rect 441 91 449 108
-rect 416 83 449 91
-rect 560 108 593 116
-rect 560 91 568 108
-rect 585 91 593 108
-rect 560 83 593 91
-rect 137 66 152 83
-rect 281 66 296 83
-rect 425 66 440 83
-rect 569 66 584 83
-rect 137 11 152 24
-rect 281 11 296 24
-rect 425 11 440 24
-rect 569 11 584 24
+rect 273 618 303 644
+rect 561 618 591 644
+rect 849 618 879 644
+rect 1137 618 1167 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 849 418 879 450
+rect 1137 418 1167 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 1119 402 1185 418
+rect 1119 368 1135 402
+rect 1169 368 1185 402
+rect 1119 352 1185 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 1119 215 1185 231
+rect 1119 181 1135 215
+rect 1169 181 1185 215
+rect 1119 165 1185 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 849 132 879 165
+rect 1137 132 1167 165
+rect 273 22 303 48
+rect 561 22 591 48
+rect 849 22 879 48
+rect 1137 22 1167 48
 << polycont >>
-rect 136 184 153 201
-rect 280 184 297 201
-rect 424 184 441 201
-rect 568 184 585 201
-rect 136 91 153 108
-rect 280 91 297 108
-rect 424 91 441 108
-rect 568 91 585 108
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 1135 368 1169 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+rect 1135 181 1169 215
 << locali >>
-rect 0 342 720 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 448 342
-rect 465 325 496 342
-rect 513 325 544 342
-rect 561 325 592 342
-rect 609 325 640 342
-rect 657 325 688 342
-rect 705 325 720 342
-rect 0 309 720 325
-rect 176 299 209 309
-rect 176 282 184 299
-rect 201 282 209 299
-rect 176 274 209 282
-rect 368 283 401 291
-rect 368 266 376 283
-rect 393 266 401 283
-rect 80 256 113 264
-rect 368 258 401 266
-rect 608 283 641 291
-rect 608 266 616 283
-rect 633 266 641 283
-rect 608 258 641 266
-rect 80 239 88 256
-rect 105 239 113 256
-rect 80 231 113 239
-rect 512 243 545 251
-rect 512 226 520 243
-rect 537 226 545 243
-rect 512 218 545 226
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 416 201 449 209
-rect 562 201 593 209
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 560 184 568 201
-rect 585 184 593 201
-rect 560 176 593 184
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 91 305 108
-rect 272 83 305 91
-rect 416 108 449 116
-rect 416 91 424 108
-rect 441 91 449 108
-rect 416 83 449 91
-rect 560 108 593 116
-rect 560 91 568 108
-rect 585 92 593 108
-rect 585 91 591 92
-rect 560 83 591 91
-rect 80 67 111 75
-rect 80 50 88 67
-rect 105 66 111 67
-rect 608 67 641 75
-rect 105 50 113 66
-rect 80 42 113 50
-rect 320 51 353 59
-rect 320 34 328 51
-rect 345 34 353 51
-rect 608 50 616 67
-rect 633 50 641 67
-rect 608 42 641 50
-rect 320 24 353 34
-rect 0 9 720 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 448 9
-rect 465 -9 496 9
-rect 513 -9 544 9
-rect 561 -9 592 9
-rect 609 -9 640 9
-rect 657 -9 688 9
-rect 705 -9 720 9
-rect 0 -24 720 -9
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1183 683
+rect 1217 649 1279 683
+rect 1313 649 1375 683
+rect 1409 649 1440 683
+rect 31 618 1409 649
+rect 351 598 417 618
+rect 351 564 367 598
+rect 401 564 417 598
+rect 351 548 417 564
+rect 1215 566 1281 582
+rect 1215 532 1231 566
+rect 1265 532 1281 566
+rect 1215 516 1281 532
+rect 159 485 225 501
+rect 159 451 175 485
+rect 209 451 225 485
+rect 639 485 705 501
+rect 639 452 655 485
+rect 159 435 225 451
+rect 643 451 655 452
+rect 689 451 705 485
+rect 643 435 705 451
+rect 1023 485 1089 501
+rect 1023 451 1039 485
+rect 1073 452 1089 485
+rect 1073 451 1085 452
+rect 1023 435 1085 451
+rect 259 402 321 418
+rect 259 401 271 402
+rect 255 368 271 401
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 1119 402 1185 418
+rect 1119 368 1135 402
+rect 1169 368 1185 402
+rect 1119 352 1185 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 1119 215 1185 231
+rect 1119 181 1135 215
+rect 1169 184 1185 215
+rect 1169 181 1181 184
+rect 1119 165 1181 181
+rect 159 134 221 150
+rect 159 100 175 134
+rect 209 131 221 134
+rect 1215 134 1281 150
+rect 209 100 225 131
+rect 159 84 225 100
+rect 639 102 705 118
+rect 639 68 655 102
+rect 689 68 705 102
+rect 1215 100 1231 134
+rect 1265 100 1281 134
+rect 1215 84 1281 100
+rect 639 48 705 68
+rect 31 17 1409 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1183 17
+rect 1217 -17 1279 17
+rect 1313 -17 1375 17
+rect 1409 -17 1440 17
 << viali >>
-rect 16 325 33 342
-rect 64 325 81 342
-rect 112 325 129 342
-rect 160 325 177 342
-rect 208 325 225 342
-rect 256 325 273 342
-rect 304 325 321 342
-rect 352 325 369 342
-rect 400 325 417 342
-rect 448 325 465 342
-rect 496 325 513 342
-rect 544 325 561 342
-rect 592 325 609 342
-rect 640 325 657 342
-rect 688 325 705 342
-rect 184 282 201 299
-rect 376 266 393 283
-rect 616 266 633 283
-rect 88 239 105 256
-rect 520 226 537 243
-rect 136 184 153 201
-rect 280 184 297 201
-rect 424 184 441 201
-rect 568 184 585 201
-rect 136 91 153 108
-rect 280 91 297 108
-rect 424 91 441 108
-rect 568 91 585 108
-rect 88 50 105 67
-rect 616 50 633 67
-rect 16 -9 33 9
-rect 64 -9 81 9
-rect 112 -9 129 9
-rect 160 -9 177 9
-rect 208 -9 225 9
-rect 256 -9 273 9
-rect 304 -9 321 9
-rect 352 -9 369 9
-rect 400 -9 417 9
-rect 448 -9 465 9
-rect 496 -9 513 9
-rect 544 -9 561 9
-rect 592 -9 609 9
-rect 640 -9 657 9
-rect 688 -9 705 9
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 895 649 929 683
+rect 991 649 1025 683
+rect 1087 649 1121 683
+rect 1183 649 1217 683
+rect 1279 649 1313 683
+rect 1375 649 1409 683
+rect 367 564 401 598
+rect 1231 532 1265 566
+rect 175 451 209 485
+rect 655 451 689 485
+rect 1039 451 1073 485
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 1135 368 1169 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+rect 1135 181 1169 215
+rect 175 100 209 134
+rect 1231 100 1265 134
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
+rect 895 -17 929 17
+rect 991 -17 1025 17
+rect 1087 -17 1121 17
+rect 1183 -17 1217 17
+rect 1279 -17 1313 17
+rect 1375 -17 1409 17
 << metal1 >>
-rect 0 342 720 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 448 342
-rect 465 325 496 342
-rect 513 325 544 342
-rect 561 325 592 342
-rect 609 325 640 342
-rect 657 325 688 342
-rect 705 325 720 342
-rect 0 309 720 325
-rect 178 299 207 309
-rect 178 282 184 299
-rect 201 282 207 299
-rect 178 276 207 282
-rect 370 283 399 289
-rect 370 266 376 283
-rect 393 282 399 283
-rect 610 283 639 289
-rect 610 282 616 283
-rect 393 268 616 282
-rect 393 266 399 268
-rect 82 256 111 262
-rect 82 239 88 256
-rect 105 255 111 256
-rect 370 260 399 266
-rect 610 266 616 268
-rect 633 266 639 283
-rect 610 260 639 266
-rect 370 255 391 260
-rect 105 241 391 255
-rect 514 243 543 249
-rect 105 239 111 241
-rect 82 233 111 239
-rect 514 226 520 243
-rect 537 241 543 243
-rect 537 227 631 241
-rect 537 226 543 227
-rect 514 220 543 226
-rect 130 201 159 207
-rect 130 184 136 201
-rect 153 184 159 201
-rect 130 178 159 184
-rect 274 201 303 207
-rect 274 184 280 201
-rect 297 184 303 201
-rect 274 178 303 184
-rect 418 201 447 207
-rect 418 184 424 201
-rect 441 184 447 201
-rect 418 178 447 184
-rect 562 201 591 207
-rect 562 184 568 201
-rect 585 184 591 201
-rect 562 178 591 184
-rect 137 114 151 178
-rect 281 114 295 178
-rect 425 114 439 178
-rect 569 114 583 178
-rect 130 108 159 114
-rect 130 91 136 108
-rect 153 91 159 108
-rect 130 85 159 91
-rect 274 108 303 114
-rect 274 91 280 108
-rect 297 91 303 108
-rect 274 85 303 91
-rect 418 108 447 114
-rect 418 91 424 108
-rect 441 91 447 108
-rect 418 85 447 91
-rect 562 108 591 114
-rect 562 91 568 108
-rect 585 91 591 108
-rect 562 85 591 91
-rect 617 73 631 227
-rect 82 67 111 73
-rect 82 50 88 67
-rect 105 66 111 67
-rect 610 67 639 73
-rect 610 66 616 67
-rect 105 52 616 66
-rect 105 50 111 52
-rect 82 44 111 50
-rect 610 50 616 52
-rect 633 50 639 67
-rect 610 44 639 50
-rect 0 9 720 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 448 9
-rect 465 -9 496 9
-rect 513 -9 544 9
-rect 561 -9 592 9
-rect 609 -9 640 9
-rect 657 -9 688 9
-rect 705 -9 720 9
-rect 0 -24 720 -9
+rect 0 683 1440 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1183 683
+rect 1217 649 1279 683
+rect 1313 649 1375 683
+rect 1409 649 1440 683
+rect 0 618 1440 649
+rect 355 598 413 618
+rect 355 564 367 598
+rect 401 564 413 598
+rect 355 552 413 564
+rect 1219 566 1277 578
+rect 1219 563 1231 566
+rect 658 535 1231 563
+rect 658 497 686 535
+rect 1219 532 1231 535
+rect 1265 532 1277 566
+rect 1219 520 1277 532
+rect 163 485 221 497
+rect 163 451 175 485
+rect 209 482 221 485
+rect 643 485 701 497
+rect 643 482 655 485
+rect 209 454 655 482
+rect 209 451 221 454
+rect 163 439 221 451
+rect 643 451 655 454
+rect 689 451 701 485
+rect 643 439 701 451
+rect 1027 485 1085 497
+rect 1027 451 1039 485
+rect 1073 451 1085 485
+rect 1027 439 1085 451
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 368 317 402
+rect 259 356 317 368
+rect 547 402 605 414
+rect 547 368 559 402
+rect 593 368 605 402
+rect 547 356 605 368
+rect 835 402 893 414
+rect 835 368 847 402
+rect 881 368 893 402
+rect 835 356 893 368
+rect 274 227 302 356
+rect 562 227 590 356
+rect 850 227 878 356
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 181 317 215
+rect 259 169 317 181
+rect 547 215 605 227
+rect 547 181 559 215
+rect 593 181 605 215
+rect 547 169 605 181
+rect 835 215 893 227
+rect 835 181 847 215
+rect 881 181 893 215
+rect 835 169 893 181
+rect 163 134 221 146
+rect 163 100 175 134
+rect 209 131 221 134
+rect 1042 131 1070 439
+rect 1123 402 1181 414
+rect 1123 368 1135 402
+rect 1169 368 1181 402
+rect 1123 356 1181 368
+rect 1138 227 1166 356
+rect 1123 215 1181 227
+rect 1123 181 1135 215
+rect 1169 181 1181 215
+rect 1123 169 1181 181
+rect 1219 134 1277 146
+rect 1219 131 1231 134
+rect 209 103 1231 131
+rect 209 100 221 103
+rect 163 88 221 100
+rect 1219 100 1231 103
+rect 1265 100 1277 134
+rect 1219 88 1277 100
+rect 0 17 1440 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1183 17
+rect 1217 -17 1279 17
+rect 1313 -17 1375 17
+rect 1409 -17 1440 17
+rect 0 -48 1440 -17
 << labels >>
-rlabel locali 0 309 720 357 0 VDD
+rlabel metal1 0 618 1440 714 0 VDD
 port 1 se
-rlabel metal1 0 309 720 357 0 VDD
+rlabel metal1 0 618 1440 714 0 VDD
 port 2 se
-rlabel locali 0 -24 720 24 0 GND
+rlabel metal1 0 -48 1440 48 0 GND
 port 3 se
-rlabel metal1 0 -24 720 24 0 GND
+rlabel metal1 0 -48 1440 48 0 GND
 port 4 se
-rlabel metal1 82 44 111 52 0 Y
+rlabel metal1 163 88 221 103 0 Y
 port 5 se
-rlabel metal1 610 44 639 52 0 Y
+rlabel metal1 1219 88 1277 103 0 Y
 port 6 se
-rlabel metal1 82 52 639 66 0 Y
+rlabel metal1 163 103 1277 131 0 Y
 port 7 se
-rlabel metal1 82 66 111 73 0 Y
+rlabel metal1 163 131 221 146 0 Y
 port 8 se
-rlabel metal1 610 66 639 73 0 Y
+rlabel metal1 1219 131 1277 146 0 Y
 port 9 se
-rlabel metal1 514 220 543 227 0 Y
+rlabel metal1 1042 131 1070 439 0 Y
 port 10 se
-rlabel metal1 617 73 631 227 0 Y
+rlabel metal1 1027 439 1085 497 0 Y
 port 11 se
-rlabel metal1 514 227 631 241 0 Y
+rlabel metal1 1123 169 1181 227 0 D
 port 12 se
-rlabel metal1 514 241 543 249 0 Y
+rlabel metal1 1138 227 1166 356 0 D
 port 13 se
-rlabel metal1 418 85 447 114 0 C
+rlabel metal1 1123 356 1181 414 0 D
 port 14 se
-rlabel metal1 425 114 439 178 0 C
+rlabel metal1 259 169 317 227 0 B
 port 15 se
-rlabel metal1 418 178 447 207 0 C
+rlabel metal1 274 227 302 356 0 B
 port 16 se
-rlabel metal1 562 85 591 114 0 D
+rlabel metal1 259 356 317 414 0 B
 port 17 se
-rlabel metal1 569 114 583 178 0 D
+rlabel metal1 835 169 893 227 0 C
 port 18 se
-rlabel metal1 562 178 591 207 0 D
+rlabel metal1 850 227 878 356 0 C
 port 19 se
-rlabel metal1 274 85 303 114 0 A
+rlabel metal1 835 356 893 414 0 C
 port 20 se
-rlabel metal1 281 114 295 178 0 A
+rlabel metal1 547 169 605 227 0 A
 port 21 se
-rlabel metal1 274 178 303 207 0 A
+rlabel metal1 562 227 590 356 0 A
 port 22 se
-rlabel metal1 130 85 159 114 0 B
+rlabel metal1 547 356 605 414 0 A
 port 23 se
-rlabel metal1 137 114 151 178 0 B
-port 24 se
-rlabel metal1 130 178 159 207 0 B
-port 25 se
+rlabel locali 0 -17 1440 17 4 GND
+port 3 se
+rlabel locali 31 17 1409 48 4 GND
+port 3 se
+rlabel locali 0 649 1440 683 4 VDD
+port 1 se
+rlabel locali 31 618 1409 649 4 VDD
+port 1 se
 << properties >>
-string FIXED_BBOX 0 0 720 333
+string FIXED_BBOX 0 0 1440 666
 << end >>
diff --git a/cells/mag/AOI22X1.mag.beforemagic b/cells/mag/AOI22X1.mag.beforemagic
new file mode 100644
index 0000000..96af52f
--- /dev/null
+++ b/cells/mag/AOI22X1.mag.beforemagic
@@ -0,0 +1,440 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1624752751
+<< nwell >>
+rect 0 358 1440 666
+<< nmos >>
+rect 273 48 303 132
+rect 561 48 591 132
+rect 849 48 879 132
+rect 1137 48 1167 132
+<< pmos >>
+rect 273 450 303 618
+rect 561 450 591 618
+rect 849 450 879 618
+rect 1137 450 1167 618
+<< ndiff >>
+rect 163 134 221 146
+rect 163 132 175 134
+rect 115 100 175 132
+rect 209 132 221 134
+rect 1219 134 1277 146
+rect 1219 132 1231 134
+rect 209 100 273 132
+rect 115 48 273 100
+rect 303 48 561 132
+rect 591 102 849 132
+rect 591 68 655 102
+rect 689 68 849 102
+rect 591 48 849 68
+rect 879 48 1137 132
+rect 1167 100 1231 132
+rect 1265 132 1277 134
+rect 1265 100 1325 132
+rect 1167 48 1325 100
+<< pdiff >>
+rect 115 485 273 618
+rect 115 451 175 485
+rect 209 451 273 485
+rect 115 450 273 451
+rect 303 598 561 618
+rect 303 564 367 598
+rect 401 564 561 598
+rect 303 450 561 564
+rect 591 485 849 618
+rect 591 451 655 485
+rect 689 451 849 485
+rect 591 450 849 451
+rect 879 485 1137 618
+rect 879 451 1039 485
+rect 1073 451 1137 485
+rect 879 450 1137 451
+rect 1167 566 1325 618
+rect 1167 532 1231 566
+rect 1265 532 1325 566
+rect 1167 450 1325 532
+rect 163 439 221 450
+rect 643 439 701 450
+rect 1027 439 1085 450
+<< ndiffc >>
+rect 175 100 209 134
+rect 655 68 689 102
+rect 1231 100 1265 134
+<< pdiffc >>
+rect 175 451 209 485
+rect 367 564 401 598
+rect 655 451 689 485
+rect 1039 451 1073 485
+rect 1231 532 1265 566
+<< poly >>
+rect 273 618 303 644
+rect 561 618 591 644
+rect 849 618 879 644
+rect 1137 618 1167 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 849 418 879 450
+rect 1137 418 1167 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 1119 402 1185 418
+rect 1119 368 1135 402
+rect 1169 368 1185 402
+rect 1119 352 1185 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 1119 215 1185 231
+rect 1119 181 1135 215
+rect 1169 181 1185 215
+rect 1119 165 1185 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 849 132 879 165
+rect 1137 132 1167 165
+rect 273 22 303 48
+rect 561 22 591 48
+rect 849 22 879 48
+rect 1137 22 1167 48
+<< polycont >>
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 1135 368 1169 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+rect 1135 181 1169 215
+<< locali >>
+rect 0 683 1440 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1183 683
+rect 1217 649 1279 683
+rect 1313 649 1375 683
+rect 1409 649 1440 683
+rect 0 618 1440 649
+rect 351 598 417 618
+rect 351 564 367 598
+rect 401 564 417 598
+rect 351 548 417 564
+rect 1215 566 1281 582
+rect 1215 532 1231 566
+rect 1265 532 1281 566
+rect 1215 516 1281 532
+rect 159 485 225 501
+rect 159 451 175 485
+rect 209 451 225 485
+rect 639 485 705 501
+rect 639 452 655 485
+rect 159 435 225 451
+rect 643 451 655 452
+rect 689 451 705 485
+rect 643 435 705 451
+rect 1023 485 1089 501
+rect 1023 451 1039 485
+rect 1073 452 1089 485
+rect 1073 451 1085 452
+rect 1023 435 1085 451
+rect 259 402 321 418
+rect 259 401 271 402
+rect 255 368 271 401
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 1119 402 1185 418
+rect 1119 368 1135 402
+rect 1169 368 1185 402
+rect 1119 352 1185 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 1119 215 1185 231
+rect 1119 181 1135 215
+rect 1169 184 1185 215
+rect 1169 181 1181 184
+rect 1119 165 1181 181
+rect 159 134 221 150
+rect 159 100 175 134
+rect 209 131 221 134
+rect 1215 134 1281 150
+rect 209 100 225 131
+rect 159 84 225 100
+rect 639 102 705 118
+rect 639 68 655 102
+rect 689 68 705 102
+rect 1215 100 1231 134
+rect 1265 100 1281 134
+rect 1215 84 1281 100
+rect 639 48 705 68
+rect 0 17 1440 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1183 17
+rect 1217 -17 1279 17
+rect 1313 -17 1375 17
+rect 1409 -17 1440 17
+rect 0 -48 1440 -17
+<< viali >>
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 895 649 929 683
+rect 991 649 1025 683
+rect 1087 649 1121 683
+rect 1183 649 1217 683
+rect 1279 649 1313 683
+rect 1375 649 1409 683
+rect 367 564 401 598
+rect 1231 532 1265 566
+rect 175 451 209 485
+rect 655 451 689 485
+rect 1039 451 1073 485
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 1135 368 1169 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+rect 1135 181 1169 215
+rect 175 100 209 134
+rect 1231 100 1265 134
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
+rect 895 -17 929 17
+rect 991 -17 1025 17
+rect 1087 -17 1121 17
+rect 1183 -17 1217 17
+rect 1279 -17 1313 17
+rect 1375 -17 1409 17
+<< metal1 >>
+rect 0 683 1440 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1183 683
+rect 1217 649 1279 683
+rect 1313 649 1375 683
+rect 1409 649 1440 683
+rect 0 618 1440 649
+rect 355 598 413 618
+rect 355 564 367 598
+rect 401 564 413 598
+rect 355 552 413 564
+rect 1219 566 1277 578
+rect 1219 563 1231 566
+rect 658 535 1231 563
+rect 658 497 686 535
+rect 1219 532 1231 535
+rect 1265 532 1277 566
+rect 1219 520 1277 532
+rect 163 485 221 497
+rect 163 451 175 485
+rect 209 482 221 485
+rect 643 485 701 497
+rect 643 482 655 485
+rect 209 454 655 482
+rect 209 451 221 454
+rect 163 439 221 451
+rect 643 451 655 454
+rect 689 451 701 485
+rect 643 439 701 451
+rect 1027 485 1085 497
+rect 1027 451 1039 485
+rect 1073 451 1085 485
+rect 1027 439 1085 451
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 368 317 402
+rect 259 356 317 368
+rect 547 402 605 414
+rect 547 368 559 402
+rect 593 368 605 402
+rect 547 356 605 368
+rect 835 402 893 414
+rect 835 368 847 402
+rect 881 368 893 402
+rect 835 356 893 368
+rect 274 227 302 356
+rect 562 227 590 356
+rect 850 227 878 356
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 181 317 215
+rect 259 169 317 181
+rect 547 215 605 227
+rect 547 181 559 215
+rect 593 181 605 215
+rect 547 169 605 181
+rect 835 215 893 227
+rect 835 181 847 215
+rect 881 181 893 215
+rect 835 169 893 181
+rect 163 134 221 146
+rect 163 100 175 134
+rect 209 131 221 134
+rect 1042 131 1070 439
+rect 1123 402 1181 414
+rect 1123 368 1135 402
+rect 1169 368 1181 402
+rect 1123 356 1181 368
+rect 1138 227 1166 356
+rect 1123 215 1181 227
+rect 1123 181 1135 215
+rect 1169 181 1181 215
+rect 1123 169 1181 181
+rect 1219 134 1277 146
+rect 1219 131 1231 134
+rect 209 103 1231 131
+rect 209 100 221 103
+rect 163 88 221 100
+rect 1219 100 1231 103
+rect 1265 100 1277 134
+rect 1219 88 1277 100
+rect 0 17 1440 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1183 17
+rect 1217 -17 1279 17
+rect 1313 -17 1375 17
+rect 1409 -17 1440 17
+rect 0 -48 1440 -17
+<< labels >>
+rlabel locali 0 618 1440 714 0 VDD
+port 1 se
+rlabel metal1 0 618 1440 714 0 VDD
+port 2 se
+rlabel locali 0 -48 1440 48 0 GND
+port 3 se
+rlabel metal1 0 -48 1440 48 0 GND
+port 4 se
+rlabel metal1 163 88 221 103 0 Y
+port 5 se
+rlabel metal1 1219 88 1277 103 0 Y
+port 6 se
+rlabel metal1 163 103 1277 131 0 Y
+port 7 se
+rlabel metal1 163 131 221 146 0 Y
+port 8 se
+rlabel metal1 1219 131 1277 146 0 Y
+port 9 se
+rlabel metal1 1042 131 1070 439 0 Y
+port 10 se
+rlabel metal1 1027 439 1085 497 0 Y
+port 11 se
+rlabel metal1 1123 169 1181 227 0 D
+port 12 se
+rlabel metal1 1138 227 1166 356 0 D
+port 13 se
+rlabel metal1 1123 356 1181 414 0 D
+port 14 se
+rlabel metal1 259 169 317 227 0 B
+port 15 se
+rlabel metal1 274 227 302 356 0 B
+port 16 se
+rlabel metal1 259 356 317 414 0 B
+port 17 se
+rlabel metal1 835 169 893 227 0 C
+port 18 se
+rlabel metal1 850 227 878 356 0 C
+port 19 se
+rlabel metal1 835 356 893 414 0 C
+port 20 se
+rlabel metal1 547 169 605 227 0 A
+port 21 se
+rlabel metal1 562 227 590 356 0 A
+port 22 se
+rlabel metal1 547 356 605 414 0 A
+port 23 se
+<< properties >>
+string FIXED_BBOX 0 0 1440 666
+<< end >>
diff --git a/cells/mag/BUFX2.mag b/cells/mag/BUFX2.mag
index 7cf17ed..f2fe82e 100644
--- a/cells/mag/BUFX2.mag
+++ b/cells/mag/BUFX2.mag
@@ -1,272 +1,272 @@
 magic
 tech sky130A
-timestamp 1624702717
+magscale 1 2
+timestamp 1624887580
+<< checkpaint >>
+rect -1260 -1374 11260 2038
 << nwell >>
-rect 0 179 432 333
+rect 0 358 864 666
 << nmos >>
-rect 137 24 152 66
-rect 281 24 296 66
+rect 273 48 303 132
+rect 561 48 591 132
 << pmos >>
-rect 137 225 152 309
-rect 281 225 296 309
+rect 273 450 303 618
+rect 561 450 591 618
 << ndiff >>
-rect 58 67 87 73
-rect 58 50 64 67
-rect 81 66 87 67
-rect 322 67 351 73
-rect 322 66 328 67
-rect 81 50 137 66
-rect 58 24 137 50
-rect 152 51 281 66
-rect 152 34 184 51
-rect 201 34 281 51
-rect 152 24 281 34
-rect 296 50 328 66
-rect 345 66 351 67
-rect 345 50 375 66
-rect 296 24 375 50
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 132 173 134
+rect 643 134 701 146
+rect 643 132 655 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 102 561 132
+rect 303 68 367 102
+rect 401 68 561 102
+rect 303 48 561 68
+rect 591 100 655 132
+rect 689 132 701 134
+rect 689 100 749 132
+rect 591 48 749 100
 << pdiff >>
-rect 58 243 137 309
-rect 58 226 64 243
-rect 81 226 137 243
-rect 58 225 137 226
-rect 152 299 281 309
-rect 152 282 184 299
-rect 201 282 281 299
-rect 152 225 281 282
-rect 296 243 375 309
-rect 296 226 328 243
-rect 345 226 375 243
-rect 296 225 375 226
-rect 58 220 87 225
-rect 322 220 351 225
+rect 115 485 273 618
+rect 115 451 127 485
+rect 161 451 273 485
+rect 115 450 273 451
+rect 303 598 561 618
+rect 303 564 367 598
+rect 401 564 561 598
+rect 303 450 561 564
+rect 591 485 749 618
+rect 591 451 655 485
+rect 689 451 749 485
+rect 591 450 749 451
+rect 115 439 173 450
+rect 643 439 701 450
 << ndiffc >>
-rect 64 50 81 67
-rect 184 34 201 51
-rect 328 50 345 67
+rect 127 100 161 134
+rect 367 68 401 102
+rect 655 100 689 134
 << pdiffc >>
-rect 64 226 81 243
-rect 184 282 201 299
-rect 328 226 345 243
+rect 127 451 161 485
+rect 367 564 401 598
+rect 655 451 689 485
 << poly >>
-rect 137 309 152 322
-rect 281 309 296 322
-rect 137 209 152 225
-rect 281 209 296 225
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 91 305 108
-rect 272 83 305 91
-rect 137 66 152 83
-rect 281 66 296 83
-rect 137 11 152 24
-rect 281 11 296 24
+rect 273 618 303 644
+rect 561 618 591 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 273 22 303 48
+rect 561 22 591 48
 << polycont >>
-rect 136 184 153 201
-rect 280 184 297 201
-rect 136 91 153 108
-rect 280 91 297 108
+rect 271 368 305 402
+rect 559 368 593 402
+rect 271 181 305 215
+rect 559 181 593 215
 << locali >>
-rect 0 342 432 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 432 342
-rect 0 309 432 325
-rect 176 299 209 309
-rect 176 282 184 299
-rect 201 282 209 299
-rect 176 274 209 282
-rect 56 243 89 251
-rect 56 226 64 243
-rect 81 226 89 243
-rect 56 218 89 226
-rect 320 243 353 251
-rect 320 226 328 243
-rect 345 226 353 243
-rect 320 218 353 226
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 303 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 136 116 153 131
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 92 305 108
-rect 297 91 303 92
-rect 272 83 303 91
-rect 56 67 89 75
-rect 56 50 64 67
-rect 81 50 89 67
-rect 320 67 353 75
-rect 56 42 89 50
-rect 176 51 209 59
-rect 176 34 184 51
-rect 201 34 209 51
-rect 320 50 328 67
-rect 345 50 353 67
-rect 320 42 353 50
-rect 176 24 209 34
-rect 0 9 432 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 432 9
-rect 0 -24 432 -9
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 864 683
+rect 31 618 833 649
+rect 351 598 417 618
+rect 351 564 367 598
+rect 401 564 417 598
+rect 351 548 417 564
+rect 111 485 177 501
+rect 111 451 127 485
+rect 161 451 177 485
+rect 111 435 177 451
+rect 639 485 705 501
+rect 639 451 655 485
+rect 689 451 705 485
+rect 639 435 705 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 605 418
+rect 543 368 559 402
+rect 593 401 605 402
+rect 593 368 609 401
+rect 543 352 609 368
+rect 271 231 305 352
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 184 609 215
+rect 593 181 605 184
+rect 543 165 605 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 639 134 705 150
+rect 111 84 177 100
+rect 351 102 417 118
+rect 351 68 367 102
+rect 401 68 417 102
+rect 639 100 655 134
+rect 689 100 705 134
+rect 639 84 705 100
+rect 351 48 417 68
+rect 31 17 833 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 864 17
 << viali >>
-rect 16 325 33 342
-rect 64 325 81 342
-rect 112 325 129 342
-rect 160 325 177 342
-rect 208 325 225 342
-rect 256 325 273 342
-rect 304 325 321 342
-rect 352 325 369 342
-rect 400 325 417 342
-rect 184 282 201 299
-rect 64 226 81 243
-rect 328 226 345 243
-rect 136 184 153 201
-rect 280 184 297 201
-rect 136 131 153 148
-rect 280 91 297 108
-rect 64 50 81 67
-rect 184 34 201 51
-rect 328 50 345 67
-rect 16 -9 33 9
-rect 64 -9 81 9
-rect 112 -9 129 9
-rect 160 -9 177 9
-rect 208 -9 225 9
-rect 256 -9 273 9
-rect 304 -9 321 9
-rect 352 -9 369 9
-rect 400 -9 417 9
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 367 564 401 598
+rect 127 451 161 485
+rect 655 451 689 485
+rect 559 368 593 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 127 100 161 134
+rect 367 68 401 102
+rect 655 100 689 134
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
 << metal1 >>
-rect 0 342 432 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 432 342
-rect 0 309 432 325
-rect 178 299 207 309
-rect 178 282 184 299
-rect 201 282 207 299
-rect 178 276 207 282
-rect 58 243 87 249
-rect 58 226 64 243
-rect 81 226 87 243
-rect 58 220 87 226
-rect 322 243 351 249
-rect 322 226 328 243
-rect 345 226 351 243
-rect 322 220 351 226
-rect 65 106 79 220
-rect 130 201 159 207
-rect 130 184 136 201
-rect 153 184 159 201
-rect 130 178 159 184
-rect 274 201 303 207
-rect 274 184 280 201
-rect 297 184 303 201
-rect 274 178 303 184
-rect 137 154 151 178
-rect 130 148 159 154
-rect 130 131 136 148
-rect 153 131 159 148
-rect 130 125 159 131
-rect 281 114 295 178
-rect 274 108 303 114
-rect 274 106 280 108
-rect 65 92 280 106
-rect 65 73 79 92
-rect 274 91 280 92
-rect 297 91 303 108
-rect 274 85 303 91
-rect 329 73 343 220
-rect 58 67 87 73
-rect 58 50 64 67
-rect 81 50 87 67
-rect 322 67 351 73
-rect 58 44 87 50
-rect 178 51 207 57
-rect 178 34 184 51
-rect 201 34 207 51
-rect 322 50 328 67
-rect 345 50 351 67
-rect 322 44 351 50
-rect 178 24 207 34
-rect 0 9 432 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 432 9
-rect 0 -24 432 -9
+rect 0 683 864 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 864 683
+rect 0 618 864 649
+rect 355 598 413 618
+rect 355 564 367 598
+rect 401 564 413 598
+rect 355 552 413 564
+rect 115 485 173 497
+rect 115 451 127 485
+rect 161 451 173 485
+rect 115 439 173 451
+rect 643 485 701 497
+rect 643 451 655 485
+rect 689 451 701 485
+rect 643 439 701 451
+rect 130 399 158 439
+rect 547 402 605 414
+rect 547 399 559 402
+rect 130 371 559 399
+rect 130 146 158 371
+rect 547 368 559 371
+rect 593 368 605 402
+rect 547 356 605 368
+rect 562 227 590 356
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 181 317 215
+rect 259 169 317 181
+rect 547 215 605 227
+rect 547 181 559 215
+rect 593 181 605 215
+rect 547 169 605 181
+rect 658 146 686 439
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 643 134 701 146
+rect 115 88 173 100
+rect 355 102 413 114
+rect 355 68 367 102
+rect 401 68 413 102
+rect 643 100 655 134
+rect 689 100 701 134
+rect 643 88 701 100
+rect 355 48 413 68
+rect 0 17 864 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 864 17
+rect 0 -48 864 -17
 << labels >>
-rlabel locali 0 309 432 357 0 VDD
+rlabel metal1 0 618 864 714 0 VDD
 port 1 se
-rlabel metal1 0 309 432 357 0 VDD
+rlabel metal1 0 618 864 714 0 VDD
 port 2 se
-rlabel locali 0 -24 432 24 0 GND
+rlabel metal1 0 -48 864 48 0 GND
 port 3 se
-rlabel metal1 0 -24 432 24 0 GND
+rlabel metal1 0 -48 864 48 0 GND
 port 4 se
-rlabel metal1 322 44 351 73 0 Y
+rlabel metal1 643 88 701 146 0 Y
 port 5 se
-rlabel metal1 329 73 343 220 0 Y
+rlabel metal1 658 146 686 439 0 Y
 port 6 se
-rlabel metal1 322 220 351 249 0 Y
+rlabel metal1 643 439 701 497 0 Y
 port 7 se
-rlabel metal1 130 125 159 154 0 A
+rlabel metal1 259 169 317 227 0 A
 port 8 se
-rlabel metal1 137 154 151 178 0 A
-port 9 se
-rlabel metal1 130 178 159 207 0 A
-port 10 se
+rlabel locali 0 -17 864 17 4 GND
+port 3 se
+rlabel locali 31 17 833 48 4 GND
+port 3 se
+rlabel locali 0 649 864 683 4 VDD
+port 1 se
+rlabel locali 31 618 833 649 4 VDD
+port 1 se
 << properties >>
-string FIXED_BBOX 0 0 432 333
+string FIXED_BBOX 0 0 864 666
 << end >>
diff --git a/cells/mag/BUFX2.mag.beforemagic b/cells/mag/BUFX2.mag.beforemagic
new file mode 100644
index 0000000..f30402f
--- /dev/null
+++ b/cells/mag/BUFX2.mag.beforemagic
@@ -0,0 +1,264 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1624752844
+<< nwell >>
+rect 0 358 864 666
+<< nmos >>
+rect 273 48 303 132
+rect 561 48 591 132
+<< pmos >>
+rect 273 450 303 618
+rect 561 450 591 618
+<< ndiff >>
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 132 173 134
+rect 643 134 701 146
+rect 643 132 655 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 102 561 132
+rect 303 68 367 102
+rect 401 68 561 102
+rect 303 48 561 68
+rect 591 100 655 132
+rect 689 132 701 134
+rect 689 100 749 132
+rect 591 48 749 100
+<< pdiff >>
+rect 115 485 273 618
+rect 115 451 127 485
+rect 161 451 273 485
+rect 115 450 273 451
+rect 303 598 561 618
+rect 303 564 367 598
+rect 401 564 561 598
+rect 303 450 561 564
+rect 591 485 749 618
+rect 591 451 655 485
+rect 689 451 749 485
+rect 591 450 749 451
+rect 115 439 173 450
+rect 643 439 701 450
+<< ndiffc >>
+rect 127 100 161 134
+rect 367 68 401 102
+rect 655 100 689 134
+<< pdiffc >>
+rect 127 451 161 485
+rect 367 564 401 598
+rect 655 451 689 485
+<< poly >>
+rect 273 618 303 644
+rect 561 618 591 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 273 22 303 48
+rect 561 22 591 48
+<< polycont >>
+rect 271 368 305 402
+rect 559 368 593 402
+rect 271 181 305 215
+rect 559 181 593 215
+<< locali >>
+rect 0 683 864 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 864 683
+rect 0 618 864 649
+rect 351 598 417 618
+rect 351 564 367 598
+rect 401 564 417 598
+rect 351 548 417 564
+rect 111 485 177 501
+rect 111 451 127 485
+rect 161 451 177 485
+rect 111 435 177 451
+rect 639 485 705 501
+rect 639 451 655 485
+rect 689 451 705 485
+rect 639 435 705 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 605 418
+rect 543 368 559 402
+rect 593 401 605 402
+rect 593 368 609 401
+rect 543 352 609 368
+rect 271 231 305 352
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 184 609 215
+rect 593 181 605 184
+rect 543 165 605 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 639 134 705 150
+rect 111 84 177 100
+rect 351 102 417 118
+rect 351 68 367 102
+rect 401 68 417 102
+rect 639 100 655 134
+rect 689 100 705 134
+rect 639 84 705 100
+rect 351 48 417 68
+rect 0 17 864 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 864 17
+rect 0 -48 864 -17
+<< viali >>
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 367 564 401 598
+rect 127 451 161 485
+rect 655 451 689 485
+rect 559 368 593 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 127 100 161 134
+rect 367 68 401 102
+rect 655 100 689 134
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
+<< metal1 >>
+rect 0 683 864 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 864 683
+rect 0 618 864 649
+rect 355 598 413 618
+rect 355 564 367 598
+rect 401 564 413 598
+rect 355 552 413 564
+rect 115 485 173 497
+rect 115 451 127 485
+rect 161 451 173 485
+rect 115 439 173 451
+rect 643 485 701 497
+rect 643 451 655 485
+rect 689 451 701 485
+rect 643 439 701 451
+rect 130 399 158 439
+rect 547 402 605 414
+rect 547 399 559 402
+rect 130 371 559 399
+rect 130 146 158 371
+rect 547 368 559 371
+rect 593 368 605 402
+rect 547 356 605 368
+rect 562 227 590 356
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 181 317 215
+rect 259 169 317 181
+rect 547 215 605 227
+rect 547 181 559 215
+rect 593 181 605 215
+rect 547 169 605 181
+rect 658 146 686 439
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 643 134 701 146
+rect 115 88 173 100
+rect 355 102 413 114
+rect 355 68 367 102
+rect 401 68 413 102
+rect 643 100 655 134
+rect 689 100 701 134
+rect 643 88 701 100
+rect 355 48 413 68
+rect 0 17 864 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 864 17
+rect 0 -48 864 -17
+<< labels >>
+rlabel locali 0 618 864 714 0 VDD
+port 1 se
+rlabel metal1 0 618 864 714 0 VDD
+port 2 se
+rlabel locali 0 -48 864 48 0 GND
+port 3 se
+rlabel metal1 0 -48 864 48 0 GND
+port 4 se
+rlabel metal1 643 88 701 146 0 Y
+port 5 se
+rlabel metal1 658 146 686 439 0 Y
+port 6 se
+rlabel metal1 643 439 701 497 0 Y
+port 7 se
+rlabel metal1 259 169 317 227 0 A
+port 8 se
+<< properties >>
+string FIXED_BBOX 0 0 864 666
+<< end >>
diff --git a/cells/mag/BUFX4.mag b/cells/mag/BUFX4.mag
index 48f30af..f667b3e 100644
--- a/cells/mag/BUFX4.mag
+++ b/cells/mag/BUFX4.mag
@@ -1,363 +1,373 @@
 magic
 tech sky130A
-timestamp 1624702806
+magscale 1 2
+timestamp 1624887581
+<< checkpaint >>
+rect -1260 -1374 11260 2038
 << nwell >>
-rect 0 179 576 333
+rect 0 358 1152 666
 << nmos >>
-rect 137 24 152 66
-rect 281 24 296 66
-rect 425 24 440 66
+rect 273 48 303 132
+rect 561 48 591 132
+rect 849 48 879 132
 << pmos >>
-rect 137 225 152 309
-rect 281 225 296 309
-rect 425 225 440 309
+rect 273 450 303 618
+rect 561 450 591 618
+rect 849 450 879 618
 << ndiff >>
-rect 58 67 87 73
-rect 58 50 64 67
-rect 81 66 87 67
-rect 370 67 399 73
-rect 370 66 376 67
-rect 81 50 137 66
-rect 58 24 137 50
-rect 152 51 281 66
-rect 152 34 184 51
-rect 201 34 281 51
-rect 152 24 281 34
-rect 296 50 376 66
-rect 393 66 399 67
-rect 393 50 425 66
-rect 296 24 425 50
-rect 440 51 519 66
-rect 440 34 472 51
-rect 489 34 519 51
-rect 440 24 519 34
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 132 173 134
+rect 739 134 797 146
+rect 739 132 751 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 102 561 132
+rect 303 68 367 102
+rect 401 68 561 102
+rect 303 48 561 68
+rect 591 100 751 132
+rect 785 132 797 134
+rect 785 100 849 132
+rect 591 48 849 100
+rect 879 102 1037 132
+rect 879 68 943 102
+rect 977 68 1037 102
+rect 879 48 1037 68
 << pdiff >>
-rect 58 243 137 309
-rect 58 226 64 243
-rect 81 226 137 243
-rect 58 225 137 226
-rect 152 299 281 309
-rect 152 282 184 299
-rect 201 282 281 299
-rect 152 225 281 282
-rect 296 243 425 309
-rect 296 226 376 243
-rect 393 226 425 243
-rect 296 225 425 226
-rect 440 299 519 309
-rect 440 282 472 299
-rect 489 282 519 299
-rect 440 225 519 282
-rect 58 220 87 225
-rect 370 220 399 225
+rect 115 485 273 618
+rect 115 451 127 485
+rect 161 451 273 485
+rect 115 450 273 451
+rect 303 598 561 618
+rect 303 564 367 598
+rect 401 564 561 598
+rect 303 450 561 564
+rect 591 485 849 618
+rect 591 451 751 485
+rect 785 451 849 485
+rect 591 450 849 451
+rect 879 598 1037 618
+rect 879 564 943 598
+rect 977 564 1037 598
+rect 879 450 1037 564
+rect 115 439 173 450
+rect 739 439 797 450
 << ndiffc >>
-rect 64 50 81 67
-rect 184 34 201 51
-rect 376 50 393 67
-rect 472 34 489 51
+rect 127 100 161 134
+rect 367 68 401 102
+rect 751 100 785 134
+rect 943 68 977 102
 << pdiffc >>
-rect 64 226 81 243
-rect 184 282 201 299
-rect 376 226 393 243
-rect 472 282 489 299
+rect 127 451 161 485
+rect 367 564 401 598
+rect 751 451 785 485
+rect 943 564 977 598
 << poly >>
-rect 137 309 152 322
-rect 281 309 296 322
-rect 425 309 440 322
-rect 137 209 152 225
-rect 281 209 296 225
-rect 425 209 440 225
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 416 201 449 209
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 91 305 108
-rect 272 83 305 91
-rect 416 108 449 116
-rect 416 91 424 108
-rect 441 91 449 108
-rect 416 83 449 91
-rect 137 66 152 83
-rect 281 66 296 83
-rect 425 66 440 83
-rect 137 11 152 24
-rect 281 11 296 24
-rect 425 11 440 24
+rect 273 618 303 644
+rect 561 618 591 644
+rect 849 618 879 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 849 418 879 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 849 132 879 165
+rect 273 22 303 48
+rect 561 22 591 48
+rect 849 22 879 48
 << polycont >>
-rect 136 184 153 201
-rect 280 184 297 201
-rect 424 184 441 201
-rect 136 91 153 108
-rect 280 91 297 108
-rect 424 91 441 108
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
 << locali >>
-rect 0 342 576 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 448 342
-rect 465 325 496 342
-rect 513 325 544 342
-rect 561 325 576 342
-rect 0 309 576 325
-rect 176 299 209 309
-rect 176 282 184 299
-rect 201 282 209 299
-rect 176 274 209 282
-rect 464 299 497 309
-rect 464 282 472 299
-rect 489 282 497 299
-rect 464 274 497 282
-rect 56 243 89 251
-rect 56 226 64 243
-rect 81 226 89 243
-rect 56 218 89 226
-rect 368 243 401 251
-rect 368 226 376 243
-rect 393 226 401 243
-rect 368 218 401 226
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 418 201 449 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 136 116 153 131
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 91 305 108
-rect 416 108 449 116
-rect 416 92 424 108
-rect 272 83 305 91
-rect 418 91 424 92
-rect 441 91 449 108
-rect 418 83 449 91
-rect 56 67 89 75
-rect 56 50 64 67
-rect 81 50 89 67
-rect 368 67 401 75
-rect 56 42 89 50
-rect 176 51 209 59
-rect 176 34 184 51
-rect 201 34 209 51
-rect 368 50 376 67
-rect 393 50 401 67
-rect 368 42 401 50
-rect 464 51 497 59
-rect 176 24 209 34
-rect 464 34 472 51
-rect 489 34 497 51
-rect 464 24 497 34
-rect 0 9 576 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 448 9
-rect 465 -9 496 9
-rect 513 -9 544 9
-rect 561 -9 576 9
-rect 0 -24 576 -9
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1152 683
+rect 31 618 1121 649
+rect 351 598 417 618
+rect 351 564 367 598
+rect 401 564 417 598
+rect 351 548 417 564
+rect 927 598 993 618
+rect 927 564 943 598
+rect 977 564 993 598
+rect 927 548 993 564
+rect 111 485 177 501
+rect 111 451 127 485
+rect 161 451 177 485
+rect 111 435 177 451
+rect 735 485 801 501
+rect 735 451 751 485
+rect 785 451 801 485
+rect 735 435 801 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 835 402 897 418
+rect 835 401 847 402
+rect 543 352 609 368
+rect 831 368 847 401
+rect 881 368 897 402
+rect 831 352 897 368
+rect 271 231 305 262
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 831 215 897 231
+rect 831 184 847 215
+rect 543 165 609 181
+rect 835 181 847 184
+rect 881 181 897 215
+rect 835 165 897 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 735 134 801 150
+rect 111 84 177 100
+rect 351 102 417 118
+rect 351 68 367 102
+rect 401 68 417 102
+rect 735 100 751 134
+rect 785 100 801 134
+rect 735 84 801 100
+rect 927 102 993 118
+rect 351 48 417 68
+rect 927 68 943 102
+rect 977 68 993 102
+rect 927 48 993 68
+rect 31 17 1121 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1152 17
 << viali >>
-rect 16 325 33 342
-rect 64 325 81 342
-rect 112 325 129 342
-rect 160 325 177 342
-rect 208 325 225 342
-rect 256 325 273 342
-rect 304 325 321 342
-rect 352 325 369 342
-rect 400 325 417 342
-rect 448 325 465 342
-rect 496 325 513 342
-rect 544 325 561 342
-rect 184 282 201 299
-rect 472 282 489 299
-rect 64 226 81 243
-rect 376 226 393 243
-rect 136 184 153 201
-rect 280 184 297 201
-rect 424 184 441 201
-rect 136 131 153 148
-rect 280 91 297 108
-rect 424 91 441 108
-rect 64 50 81 67
-rect 184 34 201 51
-rect 376 50 393 67
-rect 16 -9 33 9
-rect 64 -9 81 9
-rect 112 -9 129 9
-rect 160 -9 177 9
-rect 208 -9 225 9
-rect 256 -9 273 9
-rect 304 -9 321 9
-rect 352 -9 369 9
-rect 400 -9 417 9
-rect 448 -9 465 9
-rect 496 -9 513 9
-rect 544 -9 561 9
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 895 649 929 683
+rect 991 649 1025 683
+rect 1087 649 1121 683
+rect 367 564 401 598
+rect 943 564 977 598
+rect 127 451 161 485
+rect 751 451 785 485
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 271 262 305 296
+rect 559 181 593 215
+rect 847 181 881 215
+rect 127 100 161 134
+rect 367 68 401 102
+rect 751 100 785 134
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
+rect 895 -17 929 17
+rect 991 -17 1025 17
+rect 1087 -17 1121 17
 << metal1 >>
-rect 0 342 576 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 448 342
-rect 465 325 496 342
-rect 513 325 544 342
-rect 561 325 576 342
-rect 0 309 576 325
-rect 178 299 207 309
-rect 178 282 184 299
-rect 201 282 207 299
-rect 178 276 207 282
-rect 466 299 495 309
-rect 466 282 472 299
-rect 489 282 495 299
-rect 466 276 495 282
-rect 58 243 87 249
-rect 58 226 64 243
-rect 81 226 87 243
-rect 58 220 87 226
-rect 370 243 399 249
-rect 370 226 376 243
-rect 393 241 399 243
-rect 393 227 487 241
-rect 393 226 399 227
-rect 370 220 399 226
-rect 65 106 79 220
-rect 130 201 159 207
-rect 130 184 136 201
-rect 153 184 159 201
-rect 130 178 159 184
-rect 274 201 303 207
-rect 274 184 280 201
-rect 297 184 303 201
-rect 274 178 303 184
-rect 418 201 447 207
-rect 418 184 424 201
-rect 441 184 447 201
-rect 418 178 447 184
-rect 137 154 151 178
-rect 130 148 159 154
-rect 130 131 136 148
-rect 153 131 159 148
-rect 130 125 159 131
-rect 281 114 295 178
-rect 425 114 439 178
-rect 274 108 303 114
-rect 274 106 280 108
-rect 65 92 280 106
-rect 65 73 79 92
-rect 274 91 280 92
-rect 297 106 303 108
-rect 418 108 447 114
-rect 418 106 424 108
-rect 297 92 424 106
-rect 297 91 303 92
-rect 274 85 303 91
-rect 418 91 424 92
-rect 441 91 447 108
-rect 418 85 447 91
-rect 58 67 87 73
-rect 58 50 64 67
-rect 81 50 87 67
-rect 370 67 399 73
-rect 58 44 87 50
-rect 178 51 207 57
-rect 178 34 184 51
-rect 201 34 207 51
-rect 370 50 376 67
-rect 393 66 399 67
-rect 473 66 487 227
-rect 393 52 487 66
-rect 393 50 399 52
-rect 370 44 399 50
-rect 178 24 207 34
-rect 0 9 576 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 448 9
-rect 465 -9 496 9
-rect 513 -9 544 9
-rect 561 -9 576 9
-rect 0 -24 576 -9
+rect 0 683 1152 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1152 683
+rect 0 618 1152 649
+rect 355 598 413 618
+rect 355 564 367 598
+rect 401 564 413 598
+rect 355 552 413 564
+rect 931 598 989 618
+rect 931 564 943 598
+rect 977 564 989 598
+rect 931 552 989 564
+rect 115 485 173 497
+rect 115 451 127 485
+rect 161 451 173 485
+rect 115 439 173 451
+rect 739 485 797 497
+rect 739 451 751 485
+rect 785 482 797 485
+rect 785 454 974 482
+rect 785 451 797 454
+rect 739 439 797 451
+rect 130 212 158 439
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 368 317 402
+rect 259 356 317 368
+rect 547 402 605 414
+rect 547 368 559 402
+rect 593 368 605 402
+rect 547 356 605 368
+rect 835 402 893 414
+rect 835 368 847 402
+rect 881 368 893 402
+rect 835 356 893 368
+rect 274 308 302 356
+rect 259 296 317 308
+rect 259 262 271 296
+rect 305 262 317 296
+rect 259 250 317 262
+rect 562 227 590 356
+rect 850 227 878 356
+rect 547 215 605 227
+rect 547 212 559 215
+rect 130 184 559 212
+rect 130 146 158 184
+rect 547 181 559 184
+rect 593 212 605 215
+rect 835 215 893 227
+rect 835 212 847 215
+rect 593 184 847 212
+rect 593 181 605 184
+rect 547 169 605 181
+rect 835 181 847 184
+rect 881 181 893 215
+rect 835 169 893 181
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 739 134 797 146
+rect 115 88 173 100
+rect 355 102 413 114
+rect 355 68 367 102
+rect 401 68 413 102
+rect 739 100 751 134
+rect 785 131 797 134
+rect 946 131 974 454
+rect 785 103 974 131
+rect 785 100 797 103
+rect 739 88 797 100
+rect 355 48 413 68
+rect 0 17 1152 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1152 17
+rect 0 -48 1152 -17
 << labels >>
-rlabel locali 0 309 576 357 0 VDD
+rlabel metal1 0 618 1152 714 0 VDD
 port 1 se
-rlabel metal1 0 309 576 357 0 VDD
+rlabel metal1 0 618 1152 714 0 VDD
 port 2 se
-rlabel locali 0 -24 576 24 0 GND
+rlabel metal1 0 -48 1152 48 0 GND
 port 3 se
-rlabel metal1 0 -24 576 24 0 GND
+rlabel metal1 0 -48 1152 48 0 GND
 port 4 se
-rlabel metal1 370 44 399 52 0 Y
+rlabel metal1 739 88 797 103 0 Y
 port 5 se
-rlabel metal1 370 52 487 66 0 Y
+rlabel metal1 739 103 974 131 0 Y
 port 6 se
-rlabel metal1 370 66 399 73 0 Y
+rlabel metal1 739 131 797 146 0 Y
 port 7 se
-rlabel metal1 370 220 399 227 0 Y
+rlabel metal1 739 439 797 454 0 Y
 port 8 se
-rlabel metal1 473 66 487 227 0 Y
+rlabel metal1 946 131 974 454 0 Y
 port 9 se
-rlabel metal1 370 227 487 241 0 Y
+rlabel metal1 739 454 974 482 0 Y
 port 10 se
-rlabel metal1 370 241 399 249 0 Y
+rlabel metal1 739 482 797 497 0 Y
 port 11 se
-rlabel metal1 130 125 159 154 0 A
+rlabel metal1 259 250 317 308 0 A
 port 12 se
-rlabel metal1 137 154 151 178 0 A
+rlabel metal1 274 308 302 356 0 A
 port 13 se
-rlabel metal1 130 178 159 207 0 A
+rlabel metal1 259 356 317 414 0 A
 port 14 se
+rlabel locali 0 -17 1152 17 4 GND
+port 3 se
+rlabel locali 31 17 1121 48 4 GND
+port 3 se
+rlabel locali 0 649 1152 683 4 VDD
+port 1 se
+rlabel locali 31 618 1121 649 4 VDD
+port 1 se
 << properties >>
-string FIXED_BBOX 0 0 576 333
+string FIXED_BBOX 0 0 1152 666
 << end >>
diff --git a/cells/mag/BUFX4.mag.beforemagic b/cells/mag/BUFX4.mag.beforemagic
new file mode 100644
index 0000000..db22af4
--- /dev/null
+++ b/cells/mag/BUFX4.mag.beforemagic
@@ -0,0 +1,365 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1624752885
+<< nwell >>
+rect 0 358 1152 666
+<< nmos >>
+rect 273 48 303 132
+rect 561 48 591 132
+rect 849 48 879 132
+<< pmos >>
+rect 273 450 303 618
+rect 561 450 591 618
+rect 849 450 879 618
+<< ndiff >>
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 132 173 134
+rect 739 134 797 146
+rect 739 132 751 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 102 561 132
+rect 303 68 367 102
+rect 401 68 561 102
+rect 303 48 561 68
+rect 591 100 751 132
+rect 785 132 797 134
+rect 785 100 849 132
+rect 591 48 849 100
+rect 879 102 1037 132
+rect 879 68 943 102
+rect 977 68 1037 102
+rect 879 48 1037 68
+<< pdiff >>
+rect 115 485 273 618
+rect 115 451 127 485
+rect 161 451 273 485
+rect 115 450 273 451
+rect 303 598 561 618
+rect 303 564 367 598
+rect 401 564 561 598
+rect 303 450 561 564
+rect 591 485 849 618
+rect 591 451 751 485
+rect 785 451 849 485
+rect 591 450 849 451
+rect 879 598 1037 618
+rect 879 564 943 598
+rect 977 564 1037 598
+rect 879 450 1037 564
+rect 115 439 173 450
+rect 739 439 797 450
+<< ndiffc >>
+rect 127 100 161 134
+rect 367 68 401 102
+rect 751 100 785 134
+rect 943 68 977 102
+<< pdiffc >>
+rect 127 451 161 485
+rect 367 564 401 598
+rect 751 451 785 485
+rect 943 564 977 598
+<< poly >>
+rect 273 618 303 644
+rect 561 618 591 644
+rect 849 618 879 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 849 418 879 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 849 132 879 165
+rect 273 22 303 48
+rect 561 22 591 48
+rect 849 22 879 48
+<< polycont >>
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+<< locali >>
+rect 0 683 1152 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1152 683
+rect 0 618 1152 649
+rect 351 598 417 618
+rect 351 564 367 598
+rect 401 564 417 598
+rect 351 548 417 564
+rect 927 598 993 618
+rect 927 564 943 598
+rect 977 564 993 598
+rect 927 548 993 564
+rect 111 485 177 501
+rect 111 451 127 485
+rect 161 451 177 485
+rect 111 435 177 451
+rect 735 485 801 501
+rect 735 451 751 485
+rect 785 451 801 485
+rect 735 435 801 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 835 402 897 418
+rect 835 401 847 402
+rect 543 352 609 368
+rect 831 368 847 401
+rect 881 368 897 402
+rect 831 352 897 368
+rect 271 231 305 262
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 831 215 897 231
+rect 831 184 847 215
+rect 543 165 609 181
+rect 835 181 847 184
+rect 881 181 897 215
+rect 835 165 897 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 735 134 801 150
+rect 111 84 177 100
+rect 351 102 417 118
+rect 351 68 367 102
+rect 401 68 417 102
+rect 735 100 751 134
+rect 785 100 801 134
+rect 735 84 801 100
+rect 927 102 993 118
+rect 351 48 417 68
+rect 927 68 943 102
+rect 977 68 993 102
+rect 927 48 993 68
+rect 0 17 1152 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1152 17
+rect 0 -48 1152 -17
+<< viali >>
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 895 649 929 683
+rect 991 649 1025 683
+rect 1087 649 1121 683
+rect 367 564 401 598
+rect 943 564 977 598
+rect 127 451 161 485
+rect 751 451 785 485
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 271 262 305 296
+rect 559 181 593 215
+rect 847 181 881 215
+rect 127 100 161 134
+rect 367 68 401 102
+rect 751 100 785 134
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
+rect 895 -17 929 17
+rect 991 -17 1025 17
+rect 1087 -17 1121 17
+<< metal1 >>
+rect 0 683 1152 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1152 683
+rect 0 618 1152 649
+rect 355 598 413 618
+rect 355 564 367 598
+rect 401 564 413 598
+rect 355 552 413 564
+rect 931 598 989 618
+rect 931 564 943 598
+rect 977 564 989 598
+rect 931 552 989 564
+rect 115 485 173 497
+rect 115 451 127 485
+rect 161 451 173 485
+rect 115 439 173 451
+rect 739 485 797 497
+rect 739 451 751 485
+rect 785 482 797 485
+rect 785 454 974 482
+rect 785 451 797 454
+rect 739 439 797 451
+rect 130 212 158 439
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 368 317 402
+rect 259 356 317 368
+rect 547 402 605 414
+rect 547 368 559 402
+rect 593 368 605 402
+rect 547 356 605 368
+rect 835 402 893 414
+rect 835 368 847 402
+rect 881 368 893 402
+rect 835 356 893 368
+rect 274 308 302 356
+rect 259 296 317 308
+rect 259 262 271 296
+rect 305 262 317 296
+rect 259 250 317 262
+rect 562 227 590 356
+rect 850 227 878 356
+rect 547 215 605 227
+rect 547 212 559 215
+rect 130 184 559 212
+rect 130 146 158 184
+rect 547 181 559 184
+rect 593 212 605 215
+rect 835 215 893 227
+rect 835 212 847 215
+rect 593 184 847 212
+rect 593 181 605 184
+rect 547 169 605 181
+rect 835 181 847 184
+rect 881 181 893 215
+rect 835 169 893 181
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 739 134 797 146
+rect 115 88 173 100
+rect 355 102 413 114
+rect 355 68 367 102
+rect 401 68 413 102
+rect 739 100 751 134
+rect 785 131 797 134
+rect 946 131 974 454
+rect 785 103 974 131
+rect 785 100 797 103
+rect 739 88 797 100
+rect 355 48 413 68
+rect 0 17 1152 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1152 17
+rect 0 -48 1152 -17
+<< labels >>
+rlabel locali 0 618 1152 714 0 VDD
+port 1 se
+rlabel metal1 0 618 1152 714 0 VDD
+port 2 se
+rlabel locali 0 -48 1152 48 0 GND
+port 3 se
+rlabel metal1 0 -48 1152 48 0 GND
+port 4 se
+rlabel metal1 739 88 797 103 0 Y
+port 5 se
+rlabel metal1 739 103 974 131 0 Y
+port 6 se
+rlabel metal1 739 131 797 146 0 Y
+port 7 se
+rlabel metal1 739 439 797 454 0 Y
+port 8 se
+rlabel metal1 946 131 974 454 0 Y
+port 9 se
+rlabel metal1 739 454 974 482 0 Y
+port 10 se
+rlabel metal1 739 482 797 497 0 Y
+port 11 se
+rlabel metal1 259 250 317 308 0 A
+port 12 se
+rlabel metal1 274 308 302 356 0 A
+port 13 se
+rlabel metal1 259 356 317 414 0 A
+port 14 se
+<< properties >>
+string FIXED_BBOX 0 0 1152 666
+<< end >>
diff --git a/cells/mag/CLKBUF1.mag b/cells/mag/CLKBUF1.mag
index 0f26eb5..db9c048 100644
--- a/cells/mag/CLKBUF1.mag
+++ b/cells/mag/CLKBUF1.mag
@@ -1,781 +1,818 @@
 magic
 tech sky130A
-timestamp 1624702890
+magscale 1 2
+timestamp 1624887582
+<< checkpaint >>
+rect -1260 -1374 11260 2038
 << nwell >>
-rect 0 179 1296 333
+rect 0 358 2592 666
 << nmos >>
-rect 137 24 152 66
-rect 281 24 296 66
-rect 425 24 440 66
-rect 569 24 584 66
-rect 713 24 728 66
-rect 857 24 872 66
-rect 1001 24 1016 66
-rect 1145 24 1160 66
+rect 273 48 303 132
+rect 561 48 591 132
+rect 849 48 879 132
+rect 1137 48 1167 132
+rect 1425 48 1455 132
+rect 1713 48 1743 132
+rect 2001 48 2031 132
+rect 2289 48 2319 132
 << pmos >>
-rect 137 225 152 309
-rect 281 225 296 309
-rect 425 225 440 309
-rect 569 225 584 309
-rect 713 225 728 309
-rect 857 225 872 309
-rect 1001 225 1016 309
-rect 1145 225 1160 309
+rect 273 450 303 618
+rect 561 450 591 618
+rect 849 450 879 618
+rect 1137 450 1167 618
+rect 1425 450 1455 618
+rect 1713 450 1743 618
+rect 2001 450 2031 618
+rect 2289 450 2319 618
 << ndiff >>
-rect 178 67 207 73
-rect 178 66 184 67
-rect 58 51 137 66
-rect 58 34 64 51
-rect 81 34 137 51
-rect 58 24 137 34
-rect 152 50 184 66
-rect 201 66 207 67
-rect 466 67 495 73
-rect 466 66 472 67
-rect 201 50 281 66
-rect 152 24 281 50
-rect 296 51 425 66
-rect 296 34 328 51
-rect 345 34 425 51
-rect 296 24 425 34
-rect 440 50 472 66
-rect 489 66 495 67
-rect 754 67 783 73
-rect 754 66 760 67
-rect 489 50 569 66
-rect 440 24 569 50
-rect 584 51 713 66
-rect 584 34 616 51
-rect 633 34 713 51
-rect 584 24 713 34
-rect 728 50 760 66
-rect 777 66 783 67
-rect 1042 67 1071 73
-rect 1042 66 1048 67
-rect 777 50 857 66
-rect 728 24 857 50
-rect 872 51 1001 66
-rect 872 34 904 51
-rect 921 34 1001 51
-rect 872 24 1001 34
-rect 1016 50 1048 66
-rect 1065 66 1071 67
-rect 1065 50 1145 66
-rect 1016 24 1145 50
-rect 1160 51 1239 66
-rect 1160 34 1192 51
-rect 1209 34 1239 51
-rect 1160 24 1239 34
+rect 355 134 413 146
+rect 355 132 367 134
+rect 115 102 273 132
+rect 115 68 127 102
+rect 161 68 273 102
+rect 115 48 273 68
+rect 303 100 367 132
+rect 401 132 413 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 401 100 561 132
+rect 303 48 561 100
+rect 591 102 849 132
+rect 591 68 655 102
+rect 689 68 849 102
+rect 591 48 849 68
+rect 879 100 943 132
+rect 977 132 989 134
+rect 1507 134 1565 146
+rect 1507 132 1519 134
+rect 977 100 1137 132
+rect 879 48 1137 100
+rect 1167 102 1425 132
+rect 1167 68 1231 102
+rect 1265 68 1425 102
+rect 1167 48 1425 68
+rect 1455 100 1519 132
+rect 1553 132 1565 134
+rect 2083 134 2141 146
+rect 2083 132 2095 134
+rect 1553 100 1713 132
+rect 1455 48 1713 100
+rect 1743 102 2001 132
+rect 1743 68 1807 102
+rect 1841 68 2001 102
+rect 1743 48 2001 68
+rect 2031 100 2095 132
+rect 2129 132 2141 134
+rect 2129 100 2289 132
+rect 2031 48 2289 100
+rect 2319 102 2477 132
+rect 2319 68 2383 102
+rect 2417 68 2477 102
+rect 2319 48 2477 68
 << pdiff >>
-rect 58 299 137 309
-rect 58 282 64 299
-rect 81 282 137 299
-rect 58 225 137 282
-rect 152 243 281 309
-rect 152 226 184 243
-rect 201 226 281 243
-rect 152 225 281 226
-rect 296 299 425 309
-rect 296 282 328 299
-rect 345 282 425 299
-rect 296 225 425 282
-rect 440 243 569 309
-rect 440 226 472 243
-rect 489 226 569 243
-rect 440 225 569 226
-rect 584 299 713 309
-rect 584 282 616 299
-rect 633 282 713 299
-rect 584 225 713 282
-rect 728 243 857 309
-rect 728 226 760 243
-rect 777 226 857 243
-rect 728 225 857 226
-rect 872 299 1001 309
-rect 872 282 904 299
-rect 921 282 1001 299
-rect 872 225 1001 282
-rect 1016 243 1145 309
-rect 1016 226 1048 243
-rect 1065 226 1145 243
-rect 1016 225 1145 226
-rect 1160 299 1239 309
-rect 1160 282 1192 299
-rect 1209 282 1239 299
-rect 1160 225 1239 282
-rect 178 220 207 225
-rect 466 220 495 225
-rect 754 220 783 225
-rect 1042 220 1071 225
+rect 115 598 273 618
+rect 115 564 127 598
+rect 161 564 273 598
+rect 115 450 273 564
+rect 303 485 561 618
+rect 303 451 367 485
+rect 401 451 561 485
+rect 303 450 561 451
+rect 591 598 849 618
+rect 591 564 655 598
+rect 689 564 849 598
+rect 591 450 849 564
+rect 879 485 1137 618
+rect 879 451 943 485
+rect 977 451 1137 485
+rect 879 450 1137 451
+rect 1167 598 1425 618
+rect 1167 564 1231 598
+rect 1265 564 1425 598
+rect 1167 450 1425 564
+rect 1455 485 1713 618
+rect 1455 451 1519 485
+rect 1553 451 1713 485
+rect 1455 450 1713 451
+rect 1743 598 2001 618
+rect 1743 564 1807 598
+rect 1841 564 2001 598
+rect 1743 450 2001 564
+rect 2031 485 2289 618
+rect 2031 451 2095 485
+rect 2129 451 2289 485
+rect 2031 450 2289 451
+rect 2319 598 2477 618
+rect 2319 564 2383 598
+rect 2417 564 2477 598
+rect 2319 450 2477 564
+rect 355 439 413 450
+rect 931 439 989 450
+rect 1507 439 1565 450
+rect 2083 439 2141 450
 << ndiffc >>
-rect 64 34 81 51
-rect 184 50 201 67
-rect 328 34 345 51
-rect 472 50 489 67
-rect 616 34 633 51
-rect 760 50 777 67
-rect 904 34 921 51
-rect 1048 50 1065 67
-rect 1192 34 1209 51
+rect 127 68 161 102
+rect 367 100 401 134
+rect 655 68 689 102
+rect 943 100 977 134
+rect 1231 68 1265 102
+rect 1519 100 1553 134
+rect 1807 68 1841 102
+rect 2095 100 2129 134
+rect 2383 68 2417 102
 << pdiffc >>
-rect 64 282 81 299
-rect 184 226 201 243
-rect 328 282 345 299
-rect 472 226 489 243
-rect 616 282 633 299
-rect 760 226 777 243
-rect 904 282 921 299
-rect 1048 226 1065 243
-rect 1192 282 1209 299
+rect 127 564 161 598
+rect 367 451 401 485
+rect 655 564 689 598
+rect 943 451 977 485
+rect 1231 564 1265 598
+rect 1519 451 1553 485
+rect 1807 564 1841 598
+rect 2095 451 2129 485
+rect 2383 564 2417 598
 << poly >>
-rect 137 309 152 322
-rect 281 309 296 322
-rect 425 309 440 322
-rect 569 309 584 322
-rect 713 309 728 322
-rect 857 309 872 322
-rect 1001 309 1016 322
-rect 1145 309 1160 322
-rect 137 209 152 225
-rect 281 209 296 225
-rect 425 209 440 225
-rect 569 209 584 225
-rect 713 209 728 225
-rect 857 209 872 225
-rect 1001 209 1016 225
-rect 1145 209 1160 225
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 416 201 449 209
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 560 201 593 209
-rect 560 184 568 201
-rect 585 184 593 201
-rect 560 176 593 184
-rect 704 201 737 209
-rect 704 184 712 201
-rect 729 184 737 201
-rect 704 176 737 184
-rect 848 201 881 209
-rect 848 184 856 201
-rect 873 184 881 201
-rect 848 176 881 184
-rect 992 201 1025 209
-rect 992 184 1000 201
-rect 1017 184 1025 201
-rect 992 176 1025 184
-rect 1136 201 1169 209
-rect 1136 184 1144 201
-rect 1161 184 1169 201
-rect 1136 176 1169 184
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 91 305 108
-rect 272 83 305 91
-rect 416 108 449 116
-rect 416 91 424 108
-rect 441 91 449 108
-rect 416 83 449 91
-rect 560 108 593 116
-rect 560 91 568 108
-rect 585 91 593 108
-rect 560 83 593 91
-rect 704 108 737 116
-rect 704 91 712 108
-rect 729 91 737 108
-rect 704 83 737 91
-rect 848 108 881 116
-rect 848 91 856 108
-rect 873 91 881 108
-rect 848 83 881 91
-rect 992 108 1025 116
-rect 992 91 1000 108
-rect 1017 91 1025 108
-rect 992 83 1025 91
-rect 1136 108 1169 116
-rect 1136 91 1144 108
-rect 1161 91 1169 108
-rect 1136 83 1169 91
-rect 137 66 152 83
-rect 281 66 296 83
-rect 425 66 440 83
-rect 569 66 584 83
-rect 713 66 728 83
-rect 857 66 872 83
-rect 1001 66 1016 83
-rect 1145 66 1160 83
-rect 137 11 152 24
-rect 281 11 296 24
-rect 425 11 440 24
-rect 569 11 584 24
-rect 713 11 728 24
-rect 857 11 872 24
-rect 1001 11 1016 24
-rect 1145 11 1160 24
+rect 273 618 303 644
+rect 561 618 591 644
+rect 849 618 879 644
+rect 1137 618 1167 644
+rect 1425 618 1455 644
+rect 1713 618 1743 644
+rect 2001 618 2031 644
+rect 2289 618 2319 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 849 418 879 450
+rect 1137 418 1167 450
+rect 1425 418 1455 450
+rect 1713 418 1743 450
+rect 2001 418 2031 450
+rect 2289 418 2319 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 1119 402 1185 418
+rect 1119 368 1135 402
+rect 1169 368 1185 402
+rect 1119 352 1185 368
+rect 1407 402 1473 418
+rect 1407 368 1423 402
+rect 1457 368 1473 402
+rect 1407 352 1473 368
+rect 1695 402 1761 418
+rect 1695 368 1711 402
+rect 1745 368 1761 402
+rect 1695 352 1761 368
+rect 1983 402 2049 418
+rect 1983 368 1999 402
+rect 2033 368 2049 402
+rect 1983 352 2049 368
+rect 2271 402 2337 418
+rect 2271 368 2287 402
+rect 2321 368 2337 402
+rect 2271 352 2337 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 1119 215 1185 231
+rect 1119 181 1135 215
+rect 1169 181 1185 215
+rect 1119 165 1185 181
+rect 1407 215 1473 231
+rect 1407 181 1423 215
+rect 1457 181 1473 215
+rect 1407 165 1473 181
+rect 1695 215 1761 231
+rect 1695 181 1711 215
+rect 1745 181 1761 215
+rect 1695 165 1761 181
+rect 1983 215 2049 231
+rect 1983 181 1999 215
+rect 2033 181 2049 215
+rect 1983 165 2049 181
+rect 2271 215 2337 231
+rect 2271 181 2287 215
+rect 2321 181 2337 215
+rect 2271 165 2337 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 849 132 879 165
+rect 1137 132 1167 165
+rect 1425 132 1455 165
+rect 1713 132 1743 165
+rect 2001 132 2031 165
+rect 2289 132 2319 165
+rect 273 22 303 48
+rect 561 22 591 48
+rect 849 22 879 48
+rect 1137 22 1167 48
+rect 1425 22 1455 48
+rect 1713 22 1743 48
+rect 2001 22 2031 48
+rect 2289 22 2319 48
 << polycont >>
-rect 136 184 153 201
-rect 280 184 297 201
-rect 424 184 441 201
-rect 568 184 585 201
-rect 712 184 729 201
-rect 856 184 873 201
-rect 1000 184 1017 201
-rect 1144 184 1161 201
-rect 136 91 153 108
-rect 280 91 297 108
-rect 424 91 441 108
-rect 568 91 585 108
-rect 712 91 729 108
-rect 856 91 873 108
-rect 1000 91 1017 108
-rect 1144 91 1161 108
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 1135 368 1169 402
+rect 1423 368 1457 402
+rect 1711 368 1745 402
+rect 1999 368 2033 402
+rect 2287 368 2321 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+rect 1135 181 1169 215
+rect 1423 181 1457 215
+rect 1711 181 1745 215
+rect 1999 181 2033 215
+rect 2287 181 2321 215
 << locali >>
-rect 0 342 1296 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 448 342
-rect 465 325 496 342
-rect 513 325 544 342
-rect 561 325 592 342
-rect 609 325 640 342
-rect 657 325 688 342
-rect 705 325 736 342
-rect 753 325 784 342
-rect 801 325 832 342
-rect 849 325 880 342
-rect 897 325 928 342
-rect 945 325 976 342
-rect 993 325 1024 342
-rect 1041 325 1072 342
-rect 1089 325 1120 342
-rect 1137 325 1168 342
-rect 1185 325 1216 342
-rect 1233 325 1264 342
-rect 1281 325 1296 342
-rect 0 309 1296 325
-rect 56 299 89 309
-rect 56 282 64 299
-rect 81 282 89 299
-rect 56 274 89 282
-rect 320 299 353 309
-rect 320 282 328 299
-rect 345 282 353 299
-rect 320 274 353 282
-rect 608 299 641 309
-rect 608 282 616 299
-rect 633 282 641 299
-rect 608 274 641 282
-rect 896 299 929 309
-rect 896 282 904 299
-rect 921 282 929 299
-rect 896 274 929 282
-rect 1184 299 1217 309
-rect 1184 282 1192 299
-rect 1209 282 1217 299
-rect 1184 274 1217 282
-rect 176 243 209 251
-rect 176 226 184 243
-rect 201 226 209 243
-rect 464 243 497 251
-rect 464 226 472 243
-rect 489 226 497 243
-rect 178 218 209 226
-rect 466 218 497 226
-rect 752 243 785 251
-rect 752 226 760 243
-rect 777 226 785 243
-rect 1040 243 1073 251
-rect 1040 226 1048 243
-rect 1065 226 1073 243
-rect 752 218 785 226
-rect 1042 218 1073 226
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 416 201 449 209
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 560 201 593 209
-rect 560 184 568 201
-rect 585 184 593 201
-rect 560 176 593 184
-rect 704 201 735 209
-rect 848 201 881 209
-rect 704 184 712 201
-rect 729 184 737 201
-rect 704 176 737 184
-rect 848 184 856 201
-rect 873 184 881 201
-rect 848 176 881 184
-rect 992 201 1025 209
-rect 992 184 1000 201
-rect 1017 184 1025 201
-rect 992 176 1025 184
-rect 1136 201 1169 209
-rect 1136 184 1144 201
-rect 1161 184 1169 201
-rect 1136 176 1169 184
-rect 280 116 297 176
-rect 568 116 585 176
-rect 856 116 873 176
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 91 305 108
-rect 272 83 305 91
-rect 416 108 449 116
-rect 416 91 424 108
-rect 441 92 449 108
-rect 560 108 593 116
-rect 441 91 447 92
-rect 416 83 447 91
-rect 560 91 568 108
-rect 585 91 593 108
-rect 560 83 593 91
-rect 704 108 737 116
-rect 704 91 712 108
-rect 729 92 737 108
-rect 848 108 881 116
-rect 729 91 735 92
-rect 704 83 735 91
-rect 848 91 856 108
-rect 873 91 881 108
-rect 848 83 881 91
-rect 992 108 1025 116
-rect 992 91 1000 108
-rect 1017 92 1025 108
-rect 1017 91 1023 92
-rect 992 83 1023 91
-rect 1048 75 1065 131
-rect 1136 108 1169 116
-rect 1136 91 1144 108
-rect 1161 91 1169 108
-rect 1136 83 1169 91
-rect 178 67 209 75
-rect 178 66 184 67
-rect 56 51 89 59
-rect 56 34 64 51
-rect 81 34 89 51
-rect 176 50 184 66
-rect 201 50 209 67
-rect 464 67 497 75
-rect 176 42 209 50
-rect 320 51 353 59
-rect 56 24 89 34
-rect 320 34 328 51
-rect 345 34 353 51
-rect 464 50 472 67
-rect 489 50 497 67
-rect 752 67 785 75
-rect 464 42 497 50
-rect 608 51 641 59
-rect 320 24 353 34
-rect 608 34 616 51
-rect 633 34 641 51
-rect 752 50 760 67
-rect 777 50 785 67
-rect 1040 67 1073 75
-rect 752 42 785 50
-rect 896 51 929 59
-rect 608 24 641 34
-rect 896 34 904 51
-rect 921 34 929 51
-rect 1040 50 1048 67
-rect 1065 50 1073 67
-rect 1040 42 1073 50
-rect 1184 51 1217 59
-rect 896 24 929 34
-rect 1184 34 1192 51
-rect 1209 34 1217 51
-rect 1184 24 1217 34
-rect 0 9 1296 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 448 9
-rect 465 -9 496 9
-rect 513 -9 544 9
-rect 561 -9 592 9
-rect 609 -9 640 9
-rect 657 -9 688 9
-rect 705 -9 736 9
-rect 753 -9 784 9
-rect 801 -9 832 9
-rect 849 -9 880 9
-rect 897 -9 928 9
-rect 945 -9 976 9
-rect 993 -9 1024 9
-rect 1041 -9 1072 9
-rect 1089 -9 1120 9
-rect 1137 -9 1168 9
-rect 1185 -9 1216 9
-rect 1233 -9 1264 9
-rect 1281 -9 1296 9
-rect 0 -24 1296 -9
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1183 683
+rect 1217 649 1279 683
+rect 1313 649 1375 683
+rect 1409 649 1471 683
+rect 1505 649 1567 683
+rect 1601 649 1663 683
+rect 1697 649 1759 683
+rect 1793 649 1855 683
+rect 1889 649 1951 683
+rect 1985 649 2047 683
+rect 2081 649 2143 683
+rect 2177 649 2239 683
+rect 2273 649 2335 683
+rect 2369 649 2431 683
+rect 2465 649 2527 683
+rect 2561 649 2592 683
+rect 31 618 2561 649
+rect 111 598 177 618
+rect 111 564 127 598
+rect 161 564 177 598
+rect 111 548 177 564
+rect 639 598 705 618
+rect 639 564 655 598
+rect 689 564 705 598
+rect 1215 598 1281 618
+rect 639 548 705 564
+rect 1215 564 1231 598
+rect 1265 564 1281 598
+rect 1791 598 1857 618
+rect 1215 548 1281 564
+rect 351 485 417 501
+rect 351 452 367 485
+rect 355 451 367 452
+rect 401 451 417 485
+rect 927 485 993 501
+rect 927 452 943 485
+rect 355 435 417 451
+rect 931 451 943 452
+rect 977 451 993 485
+rect 931 435 993 451
+rect 1135 418 1169 532
+rect 1791 564 1807 598
+rect 1841 564 1857 598
+rect 1791 548 1857 564
+rect 2367 598 2433 618
+rect 2367 564 2383 598
+rect 2417 564 2433 598
+rect 2367 548 2433 564
+rect 1503 485 1569 501
+rect 1503 451 1519 485
+rect 1553 451 1569 485
+rect 1503 435 1569 451
+rect 1711 418 1745 532
+rect 2079 485 2145 501
+rect 2079 452 2095 485
+rect 2083 451 2095 452
+rect 2129 451 2145 485
+rect 2083 435 2145 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 1119 402 1185 418
+rect 1119 368 1135 402
+rect 1169 368 1185 402
+rect 1119 352 1185 368
+rect 1407 402 1469 418
+rect 1407 368 1423 402
+rect 1457 401 1469 402
+rect 1695 402 1761 418
+rect 1457 368 1473 401
+rect 1407 352 1473 368
+rect 1695 368 1711 402
+rect 1745 368 1761 402
+rect 1695 352 1761 368
+rect 1983 402 2049 418
+rect 1983 368 1999 402
+rect 2033 368 2049 402
+rect 1983 352 2049 368
+rect 1135 323 1169 352
+rect 1711 323 1745 352
+rect 559 231 593 262
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 184 897 215
+rect 1119 215 1185 231
+rect 881 181 893 184
+rect 831 165 893 181
+rect 1119 181 1135 215
+rect 1169 181 1185 215
+rect 1119 165 1185 181
+rect 1407 215 1473 231
+rect 1407 181 1423 215
+rect 1457 184 1473 215
+rect 1695 215 1761 231
+rect 1457 181 1469 184
+rect 1407 165 1469 181
+rect 1695 181 1711 215
+rect 1745 181 1761 215
+rect 1695 165 1761 181
+rect 1983 215 2049 231
+rect 1983 181 1999 215
+rect 2033 184 2049 215
+rect 2033 181 2045 184
+rect 1983 165 2045 181
+rect 2095 150 2129 435
+rect 2271 402 2337 418
+rect 2271 368 2287 402
+rect 2321 368 2337 402
+rect 2271 352 2337 368
+rect 2271 215 2337 231
+rect 2271 181 2287 215
+rect 2321 181 2337 215
+rect 2271 165 2337 181
+rect 355 134 417 150
+rect 355 131 367 134
+rect 111 102 177 118
+rect 111 68 127 102
+rect 161 68 177 102
+rect 351 100 367 131
+rect 401 100 417 134
+rect 927 134 993 150
+rect 351 84 417 100
+rect 639 102 705 118
+rect 111 48 177 68
+rect 639 68 655 102
+rect 689 68 705 102
+rect 927 100 943 134
+rect 977 100 993 134
+rect 1503 134 1569 150
+rect 927 84 993 100
+rect 1215 102 1281 118
+rect 639 48 705 68
+rect 1215 68 1231 102
+rect 1265 68 1281 102
+rect 1503 100 1519 134
+rect 1553 100 1569 134
+rect 2079 134 2145 150
+rect 1503 84 1569 100
+rect 1791 102 1857 118
+rect 1215 48 1281 68
+rect 1791 68 1807 102
+rect 1841 68 1857 102
+rect 2079 100 2095 134
+rect 2129 100 2145 134
+rect 2079 84 2145 100
+rect 2367 102 2433 118
+rect 1791 48 1857 68
+rect 2367 68 2383 102
+rect 2417 68 2433 102
+rect 2367 48 2433 68
+rect 31 17 2561 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1183 17
+rect 1217 -17 1279 17
+rect 1313 -17 1375 17
+rect 1409 -17 1471 17
+rect 1505 -17 1567 17
+rect 1601 -17 1663 17
+rect 1697 -17 1759 17
+rect 1793 -17 1855 17
+rect 1889 -17 1951 17
+rect 1985 -17 2047 17
+rect 2081 -17 2143 17
+rect 2177 -17 2239 17
+rect 2273 -17 2335 17
+rect 2369 -17 2431 17
+rect 2465 -17 2527 17
+rect 2561 -17 2592 17
 << viali >>
-rect 16 325 33 342
-rect 64 325 81 342
-rect 112 325 129 342
-rect 160 325 177 342
-rect 208 325 225 342
-rect 256 325 273 342
-rect 304 325 321 342
-rect 352 325 369 342
-rect 400 325 417 342
-rect 448 325 465 342
-rect 496 325 513 342
-rect 544 325 561 342
-rect 592 325 609 342
-rect 640 325 657 342
-rect 688 325 705 342
-rect 736 325 753 342
-rect 784 325 801 342
-rect 832 325 849 342
-rect 880 325 897 342
-rect 928 325 945 342
-rect 976 325 993 342
-rect 1024 325 1041 342
-rect 1072 325 1089 342
-rect 1120 325 1137 342
-rect 1168 325 1185 342
-rect 1216 325 1233 342
-rect 1264 325 1281 342
-rect 64 282 81 299
-rect 328 282 345 299
-rect 616 282 633 299
-rect 904 282 921 299
-rect 1192 282 1209 299
-rect 184 226 201 243
-rect 472 226 489 243
-rect 760 226 777 243
-rect 1048 226 1065 243
-rect 136 184 153 201
-rect 280 184 297 201
-rect 424 184 441 201
-rect 568 184 585 201
-rect 712 184 729 201
-rect 856 184 873 201
-rect 1000 184 1017 201
-rect 1144 184 1161 201
-rect 1048 131 1065 148
-rect 136 91 153 108
-rect 424 91 441 108
-rect 712 91 729 108
-rect 1000 91 1017 108
-rect 1144 91 1161 108
-rect 64 34 81 51
-rect 184 50 201 67
-rect 328 34 345 51
-rect 472 50 489 67
-rect 616 34 633 51
-rect 760 50 777 67
-rect 904 34 921 51
-rect 1192 34 1209 51
-rect 16 -9 33 9
-rect 64 -9 81 9
-rect 112 -9 129 9
-rect 160 -9 177 9
-rect 208 -9 225 9
-rect 256 -9 273 9
-rect 304 -9 321 9
-rect 352 -9 369 9
-rect 400 -9 417 9
-rect 448 -9 465 9
-rect 496 -9 513 9
-rect 544 -9 561 9
-rect 592 -9 609 9
-rect 640 -9 657 9
-rect 688 -9 705 9
-rect 736 -9 753 9
-rect 784 -9 801 9
-rect 832 -9 849 9
-rect 880 -9 897 9
-rect 928 -9 945 9
-rect 976 -9 993 9
-rect 1024 -9 1041 9
-rect 1072 -9 1089 9
-rect 1120 -9 1137 9
-rect 1168 -9 1185 9
-rect 1216 -9 1233 9
-rect 1264 -9 1281 9
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 895 649 929 683
+rect 991 649 1025 683
+rect 1087 649 1121 683
+rect 1183 649 1217 683
+rect 1279 649 1313 683
+rect 1375 649 1409 683
+rect 1471 649 1505 683
+rect 1567 649 1601 683
+rect 1663 649 1697 683
+rect 1759 649 1793 683
+rect 1855 649 1889 683
+rect 1951 649 1985 683
+rect 2047 649 2081 683
+rect 2143 649 2177 683
+rect 2239 649 2273 683
+rect 2335 649 2369 683
+rect 2431 649 2465 683
+rect 2527 649 2561 683
+rect 127 564 161 598
+rect 655 564 689 598
+rect 1135 532 1169 566
+rect 1231 564 1265 598
+rect 367 451 401 485
+rect 943 451 977 485
+rect 1711 532 1745 566
+rect 1807 564 1841 598
+rect 2383 564 2417 598
+rect 1519 451 1553 485
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 1423 368 1457 402
+rect 1999 368 2033 402
+rect 559 262 593 296
+rect 1135 289 1169 323
+rect 1711 289 1745 323
+rect 271 181 305 215
+rect 847 181 881 215
+rect 1135 181 1169 215
+rect 1423 181 1457 215
+rect 1711 181 1745 215
+rect 1999 181 2033 215
+rect 2287 368 2321 402
+rect 2287 181 2321 215
+rect 127 68 161 102
+rect 367 100 401 134
+rect 655 68 689 102
+rect 943 100 977 134
+rect 1231 68 1265 102
+rect 1519 100 1553 134
+rect 1807 68 1841 102
+rect 2095 100 2129 134
+rect 2383 68 2417 102
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
+rect 895 -17 929 17
+rect 991 -17 1025 17
+rect 1087 -17 1121 17
+rect 1183 -17 1217 17
+rect 1279 -17 1313 17
+rect 1375 -17 1409 17
+rect 1471 -17 1505 17
+rect 1567 -17 1601 17
+rect 1663 -17 1697 17
+rect 1759 -17 1793 17
+rect 1855 -17 1889 17
+rect 1951 -17 1985 17
+rect 2047 -17 2081 17
+rect 2143 -17 2177 17
+rect 2239 -17 2273 17
+rect 2335 -17 2369 17
+rect 2431 -17 2465 17
+rect 2527 -17 2561 17
 << metal1 >>
-rect 0 342 1296 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 448 342
-rect 465 325 496 342
-rect 513 325 544 342
-rect 561 325 592 342
-rect 609 325 640 342
-rect 657 325 688 342
-rect 705 325 736 342
-rect 753 325 784 342
-rect 801 325 832 342
-rect 849 325 880 342
-rect 897 325 928 342
-rect 945 325 976 342
-rect 993 325 1024 342
-rect 1041 325 1072 342
-rect 1089 325 1120 342
-rect 1137 325 1168 342
-rect 1185 325 1216 342
-rect 1233 325 1264 342
-rect 1281 325 1296 342
-rect 0 309 1296 325
-rect 58 299 87 309
-rect 58 282 64 299
-rect 81 282 87 299
-rect 322 299 351 309
-rect 322 282 328 299
-rect 345 282 351 299
-rect 610 299 639 309
-rect 610 282 616 299
-rect 633 282 639 299
-rect 898 299 927 309
-rect 898 282 904 299
-rect 921 282 927 299
-rect 58 276 87 282
-rect 137 268 295 282
-rect 322 276 351 282
-rect 137 207 151 268
-rect 178 243 207 249
-rect 178 226 184 243
-rect 201 226 207 243
-rect 178 220 207 226
-rect 130 201 159 207
-rect 130 184 136 201
-rect 153 184 159 201
-rect 130 178 159 184
-rect 137 114 151 178
-rect 130 108 159 114
-rect 130 91 136 108
-rect 153 91 159 108
-rect 130 85 159 91
-rect 185 106 199 220
-rect 281 207 295 268
-rect 425 268 583 282
-rect 610 276 639 282
-rect 425 207 439 268
-rect 466 243 495 249
-rect 466 226 472 243
-rect 489 226 495 243
-rect 466 220 495 226
-rect 274 201 303 207
-rect 274 184 280 201
-rect 297 184 303 201
-rect 274 178 303 184
-rect 418 201 447 207
-rect 418 184 424 201
-rect 441 184 447 201
-rect 418 178 447 184
-rect 425 114 439 178
-rect 418 108 447 114
-rect 418 106 424 108
-rect 185 92 424 106
-rect 185 73 199 92
-rect 418 91 424 92
-rect 441 91 447 108
-rect 418 85 447 91
-rect 473 106 487 220
-rect 569 207 583 268
-rect 713 268 871 282
-rect 898 276 927 282
-rect 1186 299 1215 309
-rect 1186 282 1192 299
-rect 1209 282 1215 299
-rect 1186 276 1215 282
-rect 713 207 727 268
-rect 754 243 783 249
-rect 754 226 760 243
-rect 777 226 783 243
-rect 754 220 783 226
-rect 562 201 591 207
-rect 562 184 568 201
-rect 585 184 591 201
-rect 562 178 591 184
-rect 706 201 735 207
-rect 706 184 712 201
-rect 729 184 735 201
-rect 706 178 735 184
-rect 713 114 727 178
-rect 706 108 735 114
-rect 706 106 712 108
-rect 473 92 712 106
-rect 473 73 487 92
-rect 706 91 712 92
-rect 729 91 735 108
-rect 706 85 735 91
-rect 761 106 775 220
-rect 857 207 871 268
-rect 1042 243 1071 249
-rect 1042 226 1048 243
-rect 1065 226 1071 243
-rect 1042 220 1071 226
-rect 850 201 879 207
-rect 850 184 856 201
-rect 873 184 879 201
-rect 850 178 879 184
-rect 994 201 1023 207
-rect 994 184 1000 201
-rect 1017 184 1023 201
-rect 994 178 1023 184
-rect 1001 114 1015 178
-rect 1049 154 1063 220
-rect 1138 201 1167 207
-rect 1138 184 1144 201
-rect 1161 184 1167 201
-rect 1138 178 1167 184
-rect 1042 148 1071 154
-rect 1042 131 1048 148
-rect 1065 131 1071 148
-rect 1042 125 1071 131
-rect 1145 114 1159 178
-rect 994 108 1023 114
-rect 994 106 1000 108
-rect 761 92 1000 106
-rect 761 73 775 92
-rect 994 91 1000 92
-rect 1017 106 1023 108
-rect 1138 108 1167 114
-rect 1138 106 1144 108
-rect 1017 92 1144 106
-rect 1017 91 1023 92
-rect 994 85 1023 91
-rect 1138 91 1144 92
-rect 1161 91 1167 108
-rect 1138 85 1167 91
-rect 178 67 207 73
-rect 58 51 87 57
-rect 58 34 64 51
-rect 81 34 87 51
-rect 178 50 184 67
-rect 201 50 207 67
-rect 466 67 495 73
-rect 178 44 207 50
-rect 322 51 351 57
-rect 58 24 87 34
-rect 322 34 328 51
-rect 345 34 351 51
-rect 466 50 472 67
-rect 489 50 495 67
-rect 754 67 783 73
-rect 466 44 495 50
-rect 610 51 639 57
-rect 322 24 351 34
-rect 610 34 616 51
-rect 633 34 639 51
-rect 754 50 760 67
-rect 777 50 783 67
-rect 754 44 783 50
-rect 898 51 927 57
-rect 610 24 639 34
-rect 898 34 904 51
-rect 921 34 927 51
-rect 898 24 927 34
-rect 1186 51 1215 57
-rect 1186 34 1192 51
-rect 1209 34 1215 51
-rect 1186 24 1215 34
-rect 0 9 1296 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 448 9
-rect 465 -9 496 9
-rect 513 -9 544 9
-rect 561 -9 592 9
-rect 609 -9 640 9
-rect 657 -9 688 9
-rect 705 -9 736 9
-rect 753 -9 784 9
-rect 801 -9 832 9
-rect 849 -9 880 9
-rect 897 -9 928 9
-rect 945 -9 976 9
-rect 993 -9 1024 9
-rect 1041 -9 1072 9
-rect 1089 -9 1120 9
-rect 1137 -9 1168 9
-rect 1185 -9 1216 9
-rect 1233 -9 1264 9
-rect 1281 -9 1296 9
-rect 0 -24 1296 -9
+rect 0 683 2592 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1183 683
+rect 1217 649 1279 683
+rect 1313 649 1375 683
+rect 1409 649 1471 683
+rect 1505 649 1567 683
+rect 1601 649 1663 683
+rect 1697 649 1759 683
+rect 1793 649 1855 683
+rect 1889 649 1951 683
+rect 1985 649 2047 683
+rect 2081 649 2143 683
+rect 2177 649 2239 683
+rect 2273 649 2335 683
+rect 2369 649 2431 683
+rect 2465 649 2527 683
+rect 2561 649 2592 683
+rect 0 618 2592 649
+rect 115 598 173 618
+rect 115 564 127 598
+rect 161 564 173 598
+rect 115 552 173 564
+rect 643 598 701 618
+rect 643 564 655 598
+rect 689 564 701 598
+rect 1219 598 1277 618
+rect 274 535 590 563
+rect 643 552 701 564
+rect 1123 566 1181 578
+rect 1123 563 1135 566
+rect 274 414 302 535
+rect 355 485 413 497
+rect 355 451 367 485
+rect 401 451 413 485
+rect 355 439 413 451
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 368 317 402
+rect 259 356 317 368
+rect 274 227 302 356
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 181 317 215
+rect 259 169 317 181
+rect 370 212 398 439
+rect 562 414 590 535
+rect 850 535 1135 563
+rect 850 414 878 535
+rect 1123 532 1135 535
+rect 1169 532 1181 566
+rect 1219 564 1231 598
+rect 1265 564 1277 598
+rect 1795 598 1853 618
+rect 1219 552 1277 564
+rect 1699 566 1757 578
+rect 1699 563 1711 566
+rect 1123 520 1181 532
+rect 1426 535 1711 563
+rect 931 485 989 497
+rect 931 451 943 485
+rect 977 451 989 485
+rect 931 439 989 451
+rect 547 402 605 414
+rect 547 368 559 402
+rect 593 368 605 402
+rect 547 356 605 368
+rect 835 402 893 414
+rect 835 368 847 402
+rect 881 368 893 402
+rect 835 356 893 368
+rect 946 399 974 439
+rect 1426 414 1454 535
+rect 1699 532 1711 535
+rect 1745 532 1757 566
+rect 1795 564 1807 598
+rect 1841 564 1853 598
+rect 1795 552 1853 564
+rect 2371 598 2429 618
+rect 2371 564 2383 598
+rect 2417 564 2429 598
+rect 2371 552 2429 564
+rect 1699 520 1757 532
+rect 1507 485 1565 497
+rect 1507 451 1519 485
+rect 1553 451 1565 485
+rect 1507 439 1565 451
+rect 1411 402 1469 414
+rect 1411 399 1423 402
+rect 946 371 1423 399
+rect 562 308 590 356
+rect 547 296 605 308
+rect 547 262 559 296
+rect 593 262 605 296
+rect 547 250 605 262
+rect 850 227 878 356
+rect 835 215 893 227
+rect 835 212 847 215
+rect 370 184 847 212
+rect 370 146 398 184
+rect 835 181 847 184
+rect 881 181 893 215
+rect 835 169 893 181
+rect 946 146 974 371
+rect 1411 368 1423 371
+rect 1457 368 1469 402
+rect 1411 356 1469 368
+rect 1522 399 1550 439
+rect 1987 402 2045 414
+rect 1987 399 1999 402
+rect 1522 371 1999 399
+rect 1123 323 1181 335
+rect 1123 289 1135 323
+rect 1169 289 1181 323
+rect 1123 277 1181 289
+rect 1138 227 1166 277
+rect 1426 227 1454 356
+rect 1123 215 1181 227
+rect 1123 181 1135 215
+rect 1169 181 1181 215
+rect 1123 169 1181 181
+rect 1411 215 1469 227
+rect 1411 181 1423 215
+rect 1457 181 1469 215
+rect 1411 169 1469 181
+rect 1522 146 1550 371
+rect 1987 368 1999 371
+rect 2033 399 2045 402
+rect 2275 402 2333 414
+rect 2275 399 2287 402
+rect 2033 371 2287 399
+rect 2033 368 2045 371
+rect 1987 356 2045 368
+rect 2275 368 2287 371
+rect 2321 368 2333 402
+rect 2275 356 2333 368
+rect 1699 323 1757 335
+rect 1699 289 1711 323
+rect 1745 289 1757 323
+rect 1699 277 1757 289
+rect 1714 227 1742 277
+rect 2002 227 2030 356
+rect 2290 227 2318 356
+rect 1699 215 1757 227
+rect 1699 181 1711 215
+rect 1745 181 1757 215
+rect 1699 169 1757 181
+rect 1987 215 2045 227
+rect 1987 181 1999 215
+rect 2033 181 2045 215
+rect 1987 169 2045 181
+rect 2275 215 2333 227
+rect 2275 181 2287 215
+rect 2321 181 2333 215
+rect 2275 169 2333 181
+rect 355 134 413 146
+rect 115 102 173 114
+rect 115 68 127 102
+rect 161 68 173 102
+rect 355 100 367 134
+rect 401 100 413 134
+rect 931 134 989 146
+rect 355 88 413 100
+rect 643 102 701 114
+rect 115 48 173 68
+rect 643 68 655 102
+rect 689 68 701 102
+rect 931 100 943 134
+rect 977 100 989 134
+rect 1507 134 1565 146
+rect 931 88 989 100
+rect 1219 102 1277 114
+rect 643 48 701 68
+rect 1219 68 1231 102
+rect 1265 68 1277 102
+rect 1507 100 1519 134
+rect 1553 100 1565 134
+rect 2083 134 2141 146
+rect 1507 88 1565 100
+rect 1795 102 1853 114
+rect 1219 48 1277 68
+rect 1795 68 1807 102
+rect 1841 68 1853 102
+rect 2083 100 2095 134
+rect 2129 100 2141 134
+rect 2083 88 2141 100
+rect 2371 102 2429 114
+rect 1795 48 1853 68
+rect 2371 68 2383 102
+rect 2417 68 2429 102
+rect 2371 48 2429 68
+rect 0 17 2592 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1183 17
+rect 1217 -17 1279 17
+rect 1313 -17 1375 17
+rect 1409 -17 1471 17
+rect 1505 -17 1567 17
+rect 1601 -17 1663 17
+rect 1697 -17 1759 17
+rect 1793 -17 1855 17
+rect 1889 -17 1951 17
+rect 1985 -17 2047 17
+rect 2081 -17 2143 17
+rect 2177 -17 2239 17
+rect 2273 -17 2335 17
+rect 2369 -17 2431 17
+rect 2465 -17 2527 17
+rect 2561 -17 2592 17
+rect 0 -48 2592 -17
 << labels >>
-rlabel locali 0 309 1296 357 0 VDD
+rlabel metal1 0 618 2592 714 0 VDD
 port 1 se
-rlabel metal1 0 309 1296 357 0 VDD
+rlabel metal1 0 618 2592 714 0 VDD
 port 2 se
-rlabel locali 0 -24 1296 24 0 GND
+rlabel metal1 0 -48 2592 48 0 GND
 port 3 se
-rlabel metal1 0 -24 1296 24 0 GND
+rlabel metal1 0 -48 2592 48 0 GND
 port 4 se
-rlabel metal1 1042 125 1071 154 0 Y
+rlabel metal1 2083 88 2141 146 0 Y
 port 5 se
-rlabel metal1 1049 154 1063 220 0 Y
+rlabel metal1 259 169 317 227 0 A
 port 6 se
-rlabel metal1 1042 220 1071 249 0 Y
+rlabel metal1 547 250 605 308 0 A
 port 7 se
-rlabel metal1 130 85 159 114 0 A
+rlabel metal1 274 227 302 356 0 A
 port 8 se
-rlabel metal1 137 114 151 178 0 A
+rlabel metal1 562 308 590 356 0 A
 port 9 se
-rlabel metal1 130 178 159 207 0 A
+rlabel metal1 259 356 317 414 0 A
 port 10 se
-rlabel metal1 274 178 303 207 0 A
+rlabel metal1 547 356 605 414 0 A
 port 11 se
-rlabel metal1 137 207 151 268 0 A
+rlabel metal1 274 414 302 535 0 A
 port 12 se
-rlabel metal1 281 207 295 268 0 A
+rlabel metal1 562 414 590 535 0 A
 port 13 se
-rlabel metal1 137 268 295 282 0 A
+rlabel metal1 274 535 590 563 0 A
 port 14 se
+rlabel locali 0 -17 2592 17 4 GND
+port 3 se
+rlabel locali 31 17 2561 48 4 GND
+port 3 se
+rlabel locali 0 649 2592 683 4 VDD
+port 1 se
+rlabel locali 31 618 2561 649 4 VDD
+port 1 se
 << properties >>
-string FIXED_BBOX 0 0 1296 333
+string FIXED_BBOX 0 0 2592 666
 << end >>
diff --git a/cells/mag/CLKBUF1.mag.beforemagic b/cells/mag/CLKBUF1.mag.beforemagic
new file mode 100644
index 0000000..e650ffe
--- /dev/null
+++ b/cells/mag/CLKBUF1.mag.beforemagic
@@ -0,0 +1,810 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1624752971
+<< nwell >>
+rect 0 358 2592 666
+<< nmos >>
+rect 273 48 303 132
+rect 561 48 591 132
+rect 849 48 879 132
+rect 1137 48 1167 132
+rect 1425 48 1455 132
+rect 1713 48 1743 132
+rect 2001 48 2031 132
+rect 2289 48 2319 132
+<< pmos >>
+rect 273 450 303 618
+rect 561 450 591 618
+rect 849 450 879 618
+rect 1137 450 1167 618
+rect 1425 450 1455 618
+rect 1713 450 1743 618
+rect 2001 450 2031 618
+rect 2289 450 2319 618
+<< ndiff >>
+rect 355 134 413 146
+rect 355 132 367 134
+rect 115 102 273 132
+rect 115 68 127 102
+rect 161 68 273 102
+rect 115 48 273 68
+rect 303 100 367 132
+rect 401 132 413 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 401 100 561 132
+rect 303 48 561 100
+rect 591 102 849 132
+rect 591 68 655 102
+rect 689 68 849 102
+rect 591 48 849 68
+rect 879 100 943 132
+rect 977 132 989 134
+rect 1507 134 1565 146
+rect 1507 132 1519 134
+rect 977 100 1137 132
+rect 879 48 1137 100
+rect 1167 102 1425 132
+rect 1167 68 1231 102
+rect 1265 68 1425 102
+rect 1167 48 1425 68
+rect 1455 100 1519 132
+rect 1553 132 1565 134
+rect 2083 134 2141 146
+rect 2083 132 2095 134
+rect 1553 100 1713 132
+rect 1455 48 1713 100
+rect 1743 102 2001 132
+rect 1743 68 1807 102
+rect 1841 68 2001 102
+rect 1743 48 2001 68
+rect 2031 100 2095 132
+rect 2129 132 2141 134
+rect 2129 100 2289 132
+rect 2031 48 2289 100
+rect 2319 102 2477 132
+rect 2319 68 2383 102
+rect 2417 68 2477 102
+rect 2319 48 2477 68
+<< pdiff >>
+rect 115 598 273 618
+rect 115 564 127 598
+rect 161 564 273 598
+rect 115 450 273 564
+rect 303 485 561 618
+rect 303 451 367 485
+rect 401 451 561 485
+rect 303 450 561 451
+rect 591 598 849 618
+rect 591 564 655 598
+rect 689 564 849 598
+rect 591 450 849 564
+rect 879 485 1137 618
+rect 879 451 943 485
+rect 977 451 1137 485
+rect 879 450 1137 451
+rect 1167 598 1425 618
+rect 1167 564 1231 598
+rect 1265 564 1425 598
+rect 1167 450 1425 564
+rect 1455 485 1713 618
+rect 1455 451 1519 485
+rect 1553 451 1713 485
+rect 1455 450 1713 451
+rect 1743 598 2001 618
+rect 1743 564 1807 598
+rect 1841 564 2001 598
+rect 1743 450 2001 564
+rect 2031 485 2289 618
+rect 2031 451 2095 485
+rect 2129 451 2289 485
+rect 2031 450 2289 451
+rect 2319 598 2477 618
+rect 2319 564 2383 598
+rect 2417 564 2477 598
+rect 2319 450 2477 564
+rect 355 439 413 450
+rect 931 439 989 450
+rect 1507 439 1565 450
+rect 2083 439 2141 450
+<< ndiffc >>
+rect 127 68 161 102
+rect 367 100 401 134
+rect 655 68 689 102
+rect 943 100 977 134
+rect 1231 68 1265 102
+rect 1519 100 1553 134
+rect 1807 68 1841 102
+rect 2095 100 2129 134
+rect 2383 68 2417 102
+<< pdiffc >>
+rect 127 564 161 598
+rect 367 451 401 485
+rect 655 564 689 598
+rect 943 451 977 485
+rect 1231 564 1265 598
+rect 1519 451 1553 485
+rect 1807 564 1841 598
+rect 2095 451 2129 485
+rect 2383 564 2417 598
+<< poly >>
+rect 273 618 303 644
+rect 561 618 591 644
+rect 849 618 879 644
+rect 1137 618 1167 644
+rect 1425 618 1455 644
+rect 1713 618 1743 644
+rect 2001 618 2031 644
+rect 2289 618 2319 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 849 418 879 450
+rect 1137 418 1167 450
+rect 1425 418 1455 450
+rect 1713 418 1743 450
+rect 2001 418 2031 450
+rect 2289 418 2319 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 1119 402 1185 418
+rect 1119 368 1135 402
+rect 1169 368 1185 402
+rect 1119 352 1185 368
+rect 1407 402 1473 418
+rect 1407 368 1423 402
+rect 1457 368 1473 402
+rect 1407 352 1473 368
+rect 1695 402 1761 418
+rect 1695 368 1711 402
+rect 1745 368 1761 402
+rect 1695 352 1761 368
+rect 1983 402 2049 418
+rect 1983 368 1999 402
+rect 2033 368 2049 402
+rect 1983 352 2049 368
+rect 2271 402 2337 418
+rect 2271 368 2287 402
+rect 2321 368 2337 402
+rect 2271 352 2337 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 1119 215 1185 231
+rect 1119 181 1135 215
+rect 1169 181 1185 215
+rect 1119 165 1185 181
+rect 1407 215 1473 231
+rect 1407 181 1423 215
+rect 1457 181 1473 215
+rect 1407 165 1473 181
+rect 1695 215 1761 231
+rect 1695 181 1711 215
+rect 1745 181 1761 215
+rect 1695 165 1761 181
+rect 1983 215 2049 231
+rect 1983 181 1999 215
+rect 2033 181 2049 215
+rect 1983 165 2049 181
+rect 2271 215 2337 231
+rect 2271 181 2287 215
+rect 2321 181 2337 215
+rect 2271 165 2337 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 849 132 879 165
+rect 1137 132 1167 165
+rect 1425 132 1455 165
+rect 1713 132 1743 165
+rect 2001 132 2031 165
+rect 2289 132 2319 165
+rect 273 22 303 48
+rect 561 22 591 48
+rect 849 22 879 48
+rect 1137 22 1167 48
+rect 1425 22 1455 48
+rect 1713 22 1743 48
+rect 2001 22 2031 48
+rect 2289 22 2319 48
+<< polycont >>
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 1135 368 1169 402
+rect 1423 368 1457 402
+rect 1711 368 1745 402
+rect 1999 368 2033 402
+rect 2287 368 2321 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+rect 1135 181 1169 215
+rect 1423 181 1457 215
+rect 1711 181 1745 215
+rect 1999 181 2033 215
+rect 2287 181 2321 215
+<< locali >>
+rect 0 683 2592 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1183 683
+rect 1217 649 1279 683
+rect 1313 649 1375 683
+rect 1409 649 1471 683
+rect 1505 649 1567 683
+rect 1601 649 1663 683
+rect 1697 649 1759 683
+rect 1793 649 1855 683
+rect 1889 649 1951 683
+rect 1985 649 2047 683
+rect 2081 649 2143 683
+rect 2177 649 2239 683
+rect 2273 649 2335 683
+rect 2369 649 2431 683
+rect 2465 649 2527 683
+rect 2561 649 2592 683
+rect 0 618 2592 649
+rect 111 598 177 618
+rect 111 564 127 598
+rect 161 564 177 598
+rect 111 548 177 564
+rect 639 598 705 618
+rect 639 564 655 598
+rect 689 564 705 598
+rect 1215 598 1281 618
+rect 639 548 705 564
+rect 1215 564 1231 598
+rect 1265 564 1281 598
+rect 1791 598 1857 618
+rect 1215 548 1281 564
+rect 351 485 417 501
+rect 351 452 367 485
+rect 355 451 367 452
+rect 401 451 417 485
+rect 927 485 993 501
+rect 927 452 943 485
+rect 355 435 417 451
+rect 931 451 943 452
+rect 977 451 993 485
+rect 931 435 993 451
+rect 1135 418 1169 532
+rect 1791 564 1807 598
+rect 1841 564 1857 598
+rect 1791 548 1857 564
+rect 2367 598 2433 618
+rect 2367 564 2383 598
+rect 2417 564 2433 598
+rect 2367 548 2433 564
+rect 1503 485 1569 501
+rect 1503 451 1519 485
+rect 1553 451 1569 485
+rect 1503 435 1569 451
+rect 1711 418 1745 532
+rect 2079 485 2145 501
+rect 2079 452 2095 485
+rect 2083 451 2095 452
+rect 2129 451 2145 485
+rect 2083 435 2145 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 1119 402 1185 418
+rect 1119 368 1135 402
+rect 1169 368 1185 402
+rect 1119 352 1185 368
+rect 1407 402 1469 418
+rect 1407 368 1423 402
+rect 1457 401 1469 402
+rect 1695 402 1761 418
+rect 1457 368 1473 401
+rect 1407 352 1473 368
+rect 1695 368 1711 402
+rect 1745 368 1761 402
+rect 1695 352 1761 368
+rect 1983 402 2049 418
+rect 1983 368 1999 402
+rect 2033 368 2049 402
+rect 1983 352 2049 368
+rect 1135 323 1169 352
+rect 1711 323 1745 352
+rect 559 231 593 262
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 184 897 215
+rect 1119 215 1185 231
+rect 881 181 893 184
+rect 831 165 893 181
+rect 1119 181 1135 215
+rect 1169 181 1185 215
+rect 1119 165 1185 181
+rect 1407 215 1473 231
+rect 1407 181 1423 215
+rect 1457 184 1473 215
+rect 1695 215 1761 231
+rect 1457 181 1469 184
+rect 1407 165 1469 181
+rect 1695 181 1711 215
+rect 1745 181 1761 215
+rect 1695 165 1761 181
+rect 1983 215 2049 231
+rect 1983 181 1999 215
+rect 2033 184 2049 215
+rect 2033 181 2045 184
+rect 1983 165 2045 181
+rect 2095 150 2129 435
+rect 2271 402 2337 418
+rect 2271 368 2287 402
+rect 2321 368 2337 402
+rect 2271 352 2337 368
+rect 2271 215 2337 231
+rect 2271 181 2287 215
+rect 2321 181 2337 215
+rect 2271 165 2337 181
+rect 355 134 417 150
+rect 355 131 367 134
+rect 111 102 177 118
+rect 111 68 127 102
+rect 161 68 177 102
+rect 351 100 367 131
+rect 401 100 417 134
+rect 927 134 993 150
+rect 351 84 417 100
+rect 639 102 705 118
+rect 111 48 177 68
+rect 639 68 655 102
+rect 689 68 705 102
+rect 927 100 943 134
+rect 977 100 993 134
+rect 1503 134 1569 150
+rect 927 84 993 100
+rect 1215 102 1281 118
+rect 639 48 705 68
+rect 1215 68 1231 102
+rect 1265 68 1281 102
+rect 1503 100 1519 134
+rect 1553 100 1569 134
+rect 2079 134 2145 150
+rect 1503 84 1569 100
+rect 1791 102 1857 118
+rect 1215 48 1281 68
+rect 1791 68 1807 102
+rect 1841 68 1857 102
+rect 2079 100 2095 134
+rect 2129 100 2145 134
+rect 2079 84 2145 100
+rect 2367 102 2433 118
+rect 1791 48 1857 68
+rect 2367 68 2383 102
+rect 2417 68 2433 102
+rect 2367 48 2433 68
+rect 0 17 2592 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1183 17
+rect 1217 -17 1279 17
+rect 1313 -17 1375 17
+rect 1409 -17 1471 17
+rect 1505 -17 1567 17
+rect 1601 -17 1663 17
+rect 1697 -17 1759 17
+rect 1793 -17 1855 17
+rect 1889 -17 1951 17
+rect 1985 -17 2047 17
+rect 2081 -17 2143 17
+rect 2177 -17 2239 17
+rect 2273 -17 2335 17
+rect 2369 -17 2431 17
+rect 2465 -17 2527 17
+rect 2561 -17 2592 17
+rect 0 -48 2592 -17
+<< viali >>
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 895 649 929 683
+rect 991 649 1025 683
+rect 1087 649 1121 683
+rect 1183 649 1217 683
+rect 1279 649 1313 683
+rect 1375 649 1409 683
+rect 1471 649 1505 683
+rect 1567 649 1601 683
+rect 1663 649 1697 683
+rect 1759 649 1793 683
+rect 1855 649 1889 683
+rect 1951 649 1985 683
+rect 2047 649 2081 683
+rect 2143 649 2177 683
+rect 2239 649 2273 683
+rect 2335 649 2369 683
+rect 2431 649 2465 683
+rect 2527 649 2561 683
+rect 127 564 161 598
+rect 655 564 689 598
+rect 1135 532 1169 566
+rect 1231 564 1265 598
+rect 367 451 401 485
+rect 943 451 977 485
+rect 1711 532 1745 566
+rect 1807 564 1841 598
+rect 2383 564 2417 598
+rect 1519 451 1553 485
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 1423 368 1457 402
+rect 1999 368 2033 402
+rect 559 262 593 296
+rect 1135 289 1169 323
+rect 1711 289 1745 323
+rect 271 181 305 215
+rect 847 181 881 215
+rect 1135 181 1169 215
+rect 1423 181 1457 215
+rect 1711 181 1745 215
+rect 1999 181 2033 215
+rect 2287 368 2321 402
+rect 2287 181 2321 215
+rect 127 68 161 102
+rect 367 100 401 134
+rect 655 68 689 102
+rect 943 100 977 134
+rect 1231 68 1265 102
+rect 1519 100 1553 134
+rect 1807 68 1841 102
+rect 2095 100 2129 134
+rect 2383 68 2417 102
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
+rect 895 -17 929 17
+rect 991 -17 1025 17
+rect 1087 -17 1121 17
+rect 1183 -17 1217 17
+rect 1279 -17 1313 17
+rect 1375 -17 1409 17
+rect 1471 -17 1505 17
+rect 1567 -17 1601 17
+rect 1663 -17 1697 17
+rect 1759 -17 1793 17
+rect 1855 -17 1889 17
+rect 1951 -17 1985 17
+rect 2047 -17 2081 17
+rect 2143 -17 2177 17
+rect 2239 -17 2273 17
+rect 2335 -17 2369 17
+rect 2431 -17 2465 17
+rect 2527 -17 2561 17
+<< metal1 >>
+rect 0 683 2592 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1183 683
+rect 1217 649 1279 683
+rect 1313 649 1375 683
+rect 1409 649 1471 683
+rect 1505 649 1567 683
+rect 1601 649 1663 683
+rect 1697 649 1759 683
+rect 1793 649 1855 683
+rect 1889 649 1951 683
+rect 1985 649 2047 683
+rect 2081 649 2143 683
+rect 2177 649 2239 683
+rect 2273 649 2335 683
+rect 2369 649 2431 683
+rect 2465 649 2527 683
+rect 2561 649 2592 683
+rect 0 618 2592 649
+rect 115 598 173 618
+rect 115 564 127 598
+rect 161 564 173 598
+rect 115 552 173 564
+rect 643 598 701 618
+rect 643 564 655 598
+rect 689 564 701 598
+rect 1219 598 1277 618
+rect 274 535 590 563
+rect 643 552 701 564
+rect 1123 566 1181 578
+rect 1123 563 1135 566
+rect 274 414 302 535
+rect 355 485 413 497
+rect 355 451 367 485
+rect 401 451 413 485
+rect 355 439 413 451
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 368 317 402
+rect 259 356 317 368
+rect 274 227 302 356
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 181 317 215
+rect 259 169 317 181
+rect 370 212 398 439
+rect 562 414 590 535
+rect 850 535 1135 563
+rect 850 414 878 535
+rect 1123 532 1135 535
+rect 1169 532 1181 566
+rect 1219 564 1231 598
+rect 1265 564 1277 598
+rect 1795 598 1853 618
+rect 1219 552 1277 564
+rect 1699 566 1757 578
+rect 1699 563 1711 566
+rect 1123 520 1181 532
+rect 1426 535 1711 563
+rect 931 485 989 497
+rect 931 451 943 485
+rect 977 451 989 485
+rect 931 439 989 451
+rect 547 402 605 414
+rect 547 368 559 402
+rect 593 368 605 402
+rect 547 356 605 368
+rect 835 402 893 414
+rect 835 368 847 402
+rect 881 368 893 402
+rect 835 356 893 368
+rect 946 399 974 439
+rect 1426 414 1454 535
+rect 1699 532 1711 535
+rect 1745 532 1757 566
+rect 1795 564 1807 598
+rect 1841 564 1853 598
+rect 1795 552 1853 564
+rect 2371 598 2429 618
+rect 2371 564 2383 598
+rect 2417 564 2429 598
+rect 2371 552 2429 564
+rect 1699 520 1757 532
+rect 1507 485 1565 497
+rect 1507 451 1519 485
+rect 1553 451 1565 485
+rect 1507 439 1565 451
+rect 1411 402 1469 414
+rect 1411 399 1423 402
+rect 946 371 1423 399
+rect 562 308 590 356
+rect 547 296 605 308
+rect 547 262 559 296
+rect 593 262 605 296
+rect 547 250 605 262
+rect 850 227 878 356
+rect 835 215 893 227
+rect 835 212 847 215
+rect 370 184 847 212
+rect 370 146 398 184
+rect 835 181 847 184
+rect 881 181 893 215
+rect 835 169 893 181
+rect 946 146 974 371
+rect 1411 368 1423 371
+rect 1457 368 1469 402
+rect 1411 356 1469 368
+rect 1522 399 1550 439
+rect 1987 402 2045 414
+rect 1987 399 1999 402
+rect 1522 371 1999 399
+rect 1123 323 1181 335
+rect 1123 289 1135 323
+rect 1169 289 1181 323
+rect 1123 277 1181 289
+rect 1138 227 1166 277
+rect 1426 227 1454 356
+rect 1123 215 1181 227
+rect 1123 181 1135 215
+rect 1169 181 1181 215
+rect 1123 169 1181 181
+rect 1411 215 1469 227
+rect 1411 181 1423 215
+rect 1457 181 1469 215
+rect 1411 169 1469 181
+rect 1522 146 1550 371
+rect 1987 368 1999 371
+rect 2033 399 2045 402
+rect 2275 402 2333 414
+rect 2275 399 2287 402
+rect 2033 371 2287 399
+rect 2033 368 2045 371
+rect 1987 356 2045 368
+rect 2275 368 2287 371
+rect 2321 368 2333 402
+rect 2275 356 2333 368
+rect 1699 323 1757 335
+rect 1699 289 1711 323
+rect 1745 289 1757 323
+rect 1699 277 1757 289
+rect 1714 227 1742 277
+rect 2002 227 2030 356
+rect 2290 227 2318 356
+rect 1699 215 1757 227
+rect 1699 181 1711 215
+rect 1745 181 1757 215
+rect 1699 169 1757 181
+rect 1987 215 2045 227
+rect 1987 181 1999 215
+rect 2033 181 2045 215
+rect 1987 169 2045 181
+rect 2275 215 2333 227
+rect 2275 181 2287 215
+rect 2321 181 2333 215
+rect 2275 169 2333 181
+rect 355 134 413 146
+rect 115 102 173 114
+rect 115 68 127 102
+rect 161 68 173 102
+rect 355 100 367 134
+rect 401 100 413 134
+rect 931 134 989 146
+rect 355 88 413 100
+rect 643 102 701 114
+rect 115 48 173 68
+rect 643 68 655 102
+rect 689 68 701 102
+rect 931 100 943 134
+rect 977 100 989 134
+rect 1507 134 1565 146
+rect 931 88 989 100
+rect 1219 102 1277 114
+rect 643 48 701 68
+rect 1219 68 1231 102
+rect 1265 68 1277 102
+rect 1507 100 1519 134
+rect 1553 100 1565 134
+rect 2083 134 2141 146
+rect 1507 88 1565 100
+rect 1795 102 1853 114
+rect 1219 48 1277 68
+rect 1795 68 1807 102
+rect 1841 68 1853 102
+rect 2083 100 2095 134
+rect 2129 100 2141 134
+rect 2083 88 2141 100
+rect 2371 102 2429 114
+rect 1795 48 1853 68
+rect 2371 68 2383 102
+rect 2417 68 2429 102
+rect 2371 48 2429 68
+rect 0 17 2592 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1183 17
+rect 1217 -17 1279 17
+rect 1313 -17 1375 17
+rect 1409 -17 1471 17
+rect 1505 -17 1567 17
+rect 1601 -17 1663 17
+rect 1697 -17 1759 17
+rect 1793 -17 1855 17
+rect 1889 -17 1951 17
+rect 1985 -17 2047 17
+rect 2081 -17 2143 17
+rect 2177 -17 2239 17
+rect 2273 -17 2335 17
+rect 2369 -17 2431 17
+rect 2465 -17 2527 17
+rect 2561 -17 2592 17
+rect 0 -48 2592 -17
+<< labels >>
+rlabel locali 0 618 2592 714 0 VDD
+port 1 se
+rlabel metal1 0 618 2592 714 0 VDD
+port 2 se
+rlabel locali 0 -48 2592 48 0 GND
+port 3 se
+rlabel metal1 0 -48 2592 48 0 GND
+port 4 se
+rlabel metal1 2083 88 2141 146 0 Y
+port 5 se
+rlabel metal1 259 169 317 227 0 A
+port 6 se
+rlabel metal1 547 250 605 308 0 A
+port 7 se
+rlabel metal1 274 227 302 356 0 A
+port 8 se
+rlabel metal1 562 308 590 356 0 A
+port 9 se
+rlabel metal1 259 356 317 414 0 A
+port 10 se
+rlabel metal1 547 356 605 414 0 A
+port 11 se
+rlabel metal1 274 414 302 535 0 A
+port 12 se
+rlabel metal1 562 414 590 535 0 A
+port 13 se
+rlabel metal1 274 535 590 563 0 A
+port 14 se
+<< properties >>
+string FIXED_BBOX 0 0 2592 666
+<< end >>
diff --git a/cells/mag/INV.mag b/cells/mag/INV.mag
index e2560ce..9bebd91 100644
--- a/cells/mag/INV.mag
+++ b/cells/mag/INV.mag
@@ -1,103 +1,191 @@
 magic
-# Generated by librecell
 tech sky130A
-timestamp 1624703027
+magscale 1 2
+timestamp 1624887583
+<< checkpaint >>
+rect -1260 -1374 11260 2038
 << nwell >>
-rect 0 179 288 333
-<< viali >>
-rect 16 -9 33 9
-rect 64 -9 81 9
-rect 112 -9 129 9
-rect 160 -9 177 9
-rect 208 -9 225 9
-rect 256 -9 273 9
-rect 184 34 201 51
-rect 64 50 81 67
-rect 136 91 153 108
-rect 136 184 153 201
-rect 64 226 81 243
-rect 184 282 201 299
-rect 16 325 33 342
-rect 64 325 81 342
-rect 112 325 129 342
-rect 160 325 177 342
-rect 208 325 225 342
-rect 256 325 273 342
-<< poly >>
-rect 137 11 152 83
-rect 128 83 161 116
-rect 128 176 161 209
-rect 137 209 152 322
-<< properties >>
-string FIXED_BBOX 0 0 288 333
-<< li1 >>
-rect 0 -24 288 24
-rect 176 24 209 59
-rect 56 42 89 75
-rect 128 83 161 116
-rect 128 176 161 209
-rect 56 218 89 251
-rect 176 274 209 309
-rect 0 309 288 357
-<< met1 >>
-rect 0 -24 288 24
-rect 178 24 207 57
-rect 130 85 159 114
-rect 137 114 151 178
-rect 130 178 159 207
-rect 58 44 87 73
-rect 65 73 79 220
-rect 58 220 87 249
-rect 178 276 207 309
-rect 0 309 288 357
-<< li1 >>
-<< met1 >>
-<< li1 >>
-<< met1 >>
-rect 0 -24 288 24
-rect 130 85 159 114
-rect 137 114 151 178
-rect 130 178 159 207
-rect 58 44 87 73
-rect 65 73 79 220
-rect 58 220 87 249
-rect 0 309 288 357
-<< ndiffusion >>
-rect 58 24 231 66
-rect 58 66 87 73
-<< pdiffusion >>
-rect 58 220 87 225
-rect 58 225 231 309
-<< polycont >>
-rect 136 91 153 108
-rect 136 184 153 201
-<< pdiffc >>
-rect 64 226 81 243
-rect 184 282 201 299
+rect 0 358 576 666
+<< nmos >>
+rect 273 48 303 132
+<< pmos >>
+rect 273 450 303 618
+<< ndiff >>
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 132 173 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 102 461 132
+rect 303 68 367 102
+rect 401 68 461 102
+rect 303 48 461 68
+<< pdiff >>
+rect 115 485 273 618
+rect 115 451 127 485
+rect 161 451 273 485
+rect 115 450 273 451
+rect 303 598 461 618
+rect 303 564 367 598
+rect 401 564 461 598
+rect 303 450 461 564
+rect 115 439 173 450
 << ndiffc >>
-rect 184 34 201 51
-rect 64 50 81 67
-<< allnactivetap >>
-<< allpactivetap >>
+rect 127 100 161 134
+rect 367 68 401 102
+<< pdiffc >>
+rect 127 451 161 485
+rect 367 564 401 598
+<< poly >>
+rect 273 618 303 644
+rect 273 418 303 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 273 132 303 165
+rect 273 22 303 48
+<< polycont >>
+rect 271 368 305 402
+rect 271 181 305 215
+<< locali >>
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 576 683
+rect 31 618 545 649
+rect 351 598 417 618
+rect 351 564 367 598
+rect 401 564 417 598
+rect 351 548 417 564
+rect 111 485 177 501
+rect 111 451 127 485
+rect 161 451 177 485
+rect 111 435 177 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 111 84 177 100
+rect 351 102 417 118
+rect 351 68 367 102
+rect 401 68 417 102
+rect 351 48 417 68
+rect 31 17 545 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 576 17
+<< viali >>
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 367 564 401 598
+rect 127 451 161 485
+rect 271 368 305 402
+rect 271 181 305 215
+rect 127 100 161 134
+rect 367 68 401 102
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+<< metal1 >>
+rect 0 683 576 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 576 683
+rect 0 618 576 649
+rect 355 598 413 618
+rect 355 564 367 598
+rect 401 564 413 598
+rect 355 552 413 564
+rect 115 485 173 497
+rect 115 451 127 485
+rect 161 451 173 485
+rect 115 439 173 451
+rect 130 146 158 439
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 368 317 402
+rect 259 356 317 368
+rect 274 227 302 356
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 181 317 215
+rect 259 169 317 181
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 115 88 173 100
+rect 355 102 413 114
+rect 355 68 367 102
+rect 401 68 413 102
+rect 355 48 413 68
+rect 0 17 576 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 576 17
+rect 0 -48 576 -17
 << labels >>
-rlabel li1 0 309 288 357 0 VDD
+rlabel metal1 0 618 576 714 0 VDD
 port 1 se
-rlabel met1 0 309 288 357 0 VDD
+rlabel metal1 0 618 576 714 0 VDD
 port 2 se
-rlabel li1 0 -24 288 24 0 GND
+rlabel metal1 0 -48 576 48 0 GND
 port 3 se
-rlabel met1 0 -24 288 24 0 GND
+rlabel metal1 0 -48 576 48 0 GND
 port 4 se
-rlabel met1 58 44 87 73 0 Y
+rlabel metal1 115 88 173 146 0 Y
 port 5 se
-rlabel met1 65 73 79 220 0 Y
+rlabel metal1 130 146 158 439 0 Y
 port 6 se
-rlabel met1 58 220 87 249 0 Y
+rlabel metal1 115 439 173 497 0 Y
 port 7 se
-rlabel met1 130 85 159 114 0 A
+rlabel metal1 259 169 317 227 0 A
 port 8 se
-rlabel met1 137 114 151 178 0 A
+rlabel metal1 274 227 302 356 0 A
 port 9 se
-rlabel met1 130 178 159 207 0 A
+rlabel metal1 259 356 317 414 0 A
 port 10 se
+rlabel locali 0 -17 576 17 4 GND
+port 3 se
+rlabel locali 31 17 545 48 4 GND
+port 3 se
+rlabel locali 0 649 576 683 4 VDD
+port 1 se
+rlabel locali 31 618 545 649 4 VDD
+port 1 se
+<< properties >>
+string FIXED_BBOX 0 0 576 666
 << end >>
diff --git a/cells/mag/INV.mag.beforemagic b/cells/mag/INV.mag.beforemagic
new file mode 100644
index 0000000..4c9a00f
--- /dev/null
+++ b/cells/mag/INV.mag.beforemagic
@@ -0,0 +1,104 @@
+magic
+# Generated by librecell
+tech sky130A
+magscale 1 2
+timestamp 1624753132
+<< nwell >>
+rect 0 358 576 666
+<< viali >>
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 367 68 401 102
+rect 127 100 161 134
+rect 271 181 305 215
+rect 271 368 305 402
+rect 127 451 161 485
+rect 367 564 401 598
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+<< poly >>
+rect 273 22 303 165
+rect 255 165 321 231
+rect 255 352 321 418
+rect 273 418 303 644
+<< properties >>
+string FIXED_BBOX 0 0 576 666
+<< li1 >>
+rect 0 -48 576 48
+rect 351 48 417 118
+rect 111 84 177 150
+rect 255 165 321 231
+rect 255 352 321 418
+rect 111 435 177 501
+rect 351 548 417 618
+rect 0 618 576 714
+<< met1 >>
+rect 0 -48 576 48
+rect 355 48 413 114
+rect 259 169 317 227
+rect 274 227 302 356
+rect 259 356 317 414
+rect 115 88 173 146
+rect 130 146 158 439
+rect 115 439 173 497
+rect 355 552 413 618
+rect 0 618 576 714
+<< li1 >>
+<< met1 >>
+<< li1 >>
+<< met1 >>
+rect 0 -48 576 48
+rect 259 169 317 227
+rect 274 227 302 356
+rect 259 356 317 414
+rect 115 88 173 146
+rect 130 146 158 439
+rect 115 439 173 497
+rect 0 618 576 714
+<< ndiffusion >>
+rect 115 48 461 132
+rect 115 132 173 146
+<< pdiffusion >>
+rect 115 439 173 450
+rect 115 450 461 618
+<< polycont >>
+rect 271 181 305 215
+rect 271 368 305 402
+<< pdiffc >>
+rect 127 451 161 485
+rect 367 564 401 598
+<< ndiffc >>
+rect 367 68 401 102
+rect 127 100 161 134
+<< allnactivetap >>
+<< allpactivetap >>
+<< labels >>
+rlabel li1 0 618 576 714 0 VDD
+port 1 se
+rlabel met1 0 618 576 714 0 VDD
+port 2 se
+rlabel li1 0 -48 576 48 0 GND
+port 3 se
+rlabel met1 0 -48 576 48 0 GND
+port 4 se
+rlabel met1 115 88 173 146 0 Y
+port 5 se
+rlabel met1 130 146 158 439 0 Y
+port 6 se
+rlabel met1 115 439 173 497 0 Y
+port 7 se
+rlabel met1 259 169 317 227 0 A
+port 8 se
+rlabel met1 274 227 302 356 0 A
+port 9 se
+rlabel met1 259 356 317 414 0 A
+port 10 se
+<< end >>
diff --git a/cells/mag/INVX1.mag b/cells/mag/INVX1.mag
index e20d8da..9bebd91 100644
--- a/cells/mag/INVX1.mag
+++ b/cells/mag/INVX1.mag
@@ -1,103 +1,191 @@
 magic
-# Generated by librecell
 tech sky130A
-timestamp 1624703053
+magscale 1 2
+timestamp 1624887583
+<< checkpaint >>
+rect -1260 -1374 11260 2038
 << nwell >>
-rect 0 179 288 333
-<< viali >>
-rect 16 -9 33 9
-rect 64 -9 81 9
-rect 112 -9 129 9
-rect 160 -9 177 9
-rect 208 -9 225 9
-rect 256 -9 273 9
-rect 184 34 201 51
-rect 64 50 81 67
-rect 136 91 153 108
-rect 136 184 153 201
-rect 64 226 81 243
-rect 184 282 201 299
-rect 16 325 33 342
-rect 64 325 81 342
-rect 112 325 129 342
-rect 160 325 177 342
-rect 208 325 225 342
-rect 256 325 273 342
-<< poly >>
-rect 137 11 152 83
-rect 128 83 161 116
-rect 128 176 161 209
-rect 137 209 152 322
-<< properties >>
-string FIXED_BBOX 0 0 288 333
-<< li1 >>
-rect 0 -24 288 24
-rect 176 24 209 59
-rect 56 42 89 75
-rect 128 83 161 116
-rect 128 176 161 209
-rect 56 218 89 251
-rect 176 274 209 309
-rect 0 309 288 357
-<< met1 >>
-rect 0 -24 288 24
-rect 178 24 207 57
-rect 130 85 159 114
-rect 137 114 151 178
-rect 130 178 159 207
-rect 58 44 87 73
-rect 65 73 79 220
-rect 58 220 87 249
-rect 178 276 207 309
-rect 0 309 288 357
-<< li1 >>
-<< met1 >>
-<< li1 >>
-<< met1 >>
-rect 0 -24 288 24
-rect 130 85 159 114
-rect 137 114 151 178
-rect 130 178 159 207
-rect 58 44 87 73
-rect 65 73 79 220
-rect 58 220 87 249
-rect 0 309 288 357
-<< ndiffusion >>
-rect 58 24 231 66
-rect 58 66 87 73
-<< pdiffusion >>
-rect 58 220 87 225
-rect 58 225 231 309
-<< polycont >>
-rect 136 91 153 108
-rect 136 184 153 201
-<< pdiffc >>
-rect 64 226 81 243
-rect 184 282 201 299
+rect 0 358 576 666
+<< nmos >>
+rect 273 48 303 132
+<< pmos >>
+rect 273 450 303 618
+<< ndiff >>
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 132 173 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 102 461 132
+rect 303 68 367 102
+rect 401 68 461 102
+rect 303 48 461 68
+<< pdiff >>
+rect 115 485 273 618
+rect 115 451 127 485
+rect 161 451 273 485
+rect 115 450 273 451
+rect 303 598 461 618
+rect 303 564 367 598
+rect 401 564 461 598
+rect 303 450 461 564
+rect 115 439 173 450
 << ndiffc >>
-rect 184 34 201 51
-rect 64 50 81 67
-<< allnactivetap >>
-<< allpactivetap >>
+rect 127 100 161 134
+rect 367 68 401 102
+<< pdiffc >>
+rect 127 451 161 485
+rect 367 564 401 598
+<< poly >>
+rect 273 618 303 644
+rect 273 418 303 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 273 132 303 165
+rect 273 22 303 48
+<< polycont >>
+rect 271 368 305 402
+rect 271 181 305 215
+<< locali >>
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 576 683
+rect 31 618 545 649
+rect 351 598 417 618
+rect 351 564 367 598
+rect 401 564 417 598
+rect 351 548 417 564
+rect 111 485 177 501
+rect 111 451 127 485
+rect 161 451 177 485
+rect 111 435 177 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 111 84 177 100
+rect 351 102 417 118
+rect 351 68 367 102
+rect 401 68 417 102
+rect 351 48 417 68
+rect 31 17 545 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 576 17
+<< viali >>
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 367 564 401 598
+rect 127 451 161 485
+rect 271 368 305 402
+rect 271 181 305 215
+rect 127 100 161 134
+rect 367 68 401 102
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+<< metal1 >>
+rect 0 683 576 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 576 683
+rect 0 618 576 649
+rect 355 598 413 618
+rect 355 564 367 598
+rect 401 564 413 598
+rect 355 552 413 564
+rect 115 485 173 497
+rect 115 451 127 485
+rect 161 451 173 485
+rect 115 439 173 451
+rect 130 146 158 439
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 368 317 402
+rect 259 356 317 368
+rect 274 227 302 356
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 181 317 215
+rect 259 169 317 181
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 115 88 173 100
+rect 355 102 413 114
+rect 355 68 367 102
+rect 401 68 413 102
+rect 355 48 413 68
+rect 0 17 576 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 576 17
+rect 0 -48 576 -17
 << labels >>
-rlabel li1 0 309 288 357 0 VDD
+rlabel metal1 0 618 576 714 0 VDD
 port 1 se
-rlabel met1 0 309 288 357 0 VDD
+rlabel metal1 0 618 576 714 0 VDD
 port 2 se
-rlabel li1 0 -24 288 24 0 GND
+rlabel metal1 0 -48 576 48 0 GND
 port 3 se
-rlabel met1 0 -24 288 24 0 GND
+rlabel metal1 0 -48 576 48 0 GND
 port 4 se
-rlabel met1 58 44 87 73 0 Y
+rlabel metal1 115 88 173 146 0 Y
 port 5 se
-rlabel met1 65 73 79 220 0 Y
+rlabel metal1 130 146 158 439 0 Y
 port 6 se
-rlabel met1 58 220 87 249 0 Y
+rlabel metal1 115 439 173 497 0 Y
 port 7 se
-rlabel met1 130 85 159 114 0 A
+rlabel metal1 259 169 317 227 0 A
 port 8 se
-rlabel met1 137 114 151 178 0 A
+rlabel metal1 274 227 302 356 0 A
 port 9 se
-rlabel met1 130 178 159 207 0 A
+rlabel metal1 259 356 317 414 0 A
 port 10 se
+rlabel locali 0 -17 576 17 4 GND
+port 3 se
+rlabel locali 31 17 545 48 4 GND
+port 3 se
+rlabel locali 0 649 576 683 4 VDD
+port 1 se
+rlabel locali 31 618 545 649 4 VDD
+port 1 se
+<< properties >>
+string FIXED_BBOX 0 0 576 666
 << end >>
diff --git a/cells/mag/INVX1.mag.beforemagic b/cells/mag/INVX1.mag.beforemagic
new file mode 100644
index 0000000..bb7f05e
--- /dev/null
+++ b/cells/mag/INVX1.mag.beforemagic
@@ -0,0 +1,104 @@
+magic
+# Generated by librecell
+tech sky130A
+magscale 1 2
+timestamp 1624753163
+<< nwell >>
+rect 0 358 576 666
+<< viali >>
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 367 68 401 102
+rect 127 100 161 134
+rect 271 181 305 215
+rect 271 368 305 402
+rect 127 451 161 485
+rect 367 564 401 598
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+<< poly >>
+rect 273 22 303 165
+rect 255 165 321 231
+rect 255 352 321 418
+rect 273 418 303 644
+<< properties >>
+string FIXED_BBOX 0 0 576 666
+<< li1 >>
+rect 0 -48 576 48
+rect 351 48 417 118
+rect 111 84 177 150
+rect 255 165 321 231
+rect 255 352 321 418
+rect 111 435 177 501
+rect 351 548 417 618
+rect 0 618 576 714
+<< met1 >>
+rect 0 -48 576 48
+rect 355 48 413 114
+rect 259 169 317 227
+rect 274 227 302 356
+rect 259 356 317 414
+rect 115 88 173 146
+rect 130 146 158 439
+rect 115 439 173 497
+rect 355 552 413 618
+rect 0 618 576 714
+<< li1 >>
+<< met1 >>
+<< li1 >>
+<< met1 >>
+rect 0 -48 576 48
+rect 259 169 317 227
+rect 274 227 302 356
+rect 259 356 317 414
+rect 115 88 173 146
+rect 130 146 158 439
+rect 115 439 173 497
+rect 0 618 576 714
+<< ndiffusion >>
+rect 115 48 461 132
+rect 115 132 173 146
+<< pdiffusion >>
+rect 115 439 173 450
+rect 115 450 461 618
+<< polycont >>
+rect 271 181 305 215
+rect 271 368 305 402
+<< pdiffc >>
+rect 127 451 161 485
+rect 367 564 401 598
+<< ndiffc >>
+rect 367 68 401 102
+rect 127 100 161 134
+<< allnactivetap >>
+<< allpactivetap >>
+<< labels >>
+rlabel li1 0 618 576 714 0 VDD
+port 1 se
+rlabel met1 0 618 576 714 0 VDD
+port 2 se
+rlabel li1 0 -48 576 48 0 GND
+port 3 se
+rlabel met1 0 -48 576 48 0 GND
+port 4 se
+rlabel met1 115 88 173 146 0 Y
+port 5 se
+rlabel met1 130 146 158 439 0 Y
+port 6 se
+rlabel met1 115 439 173 497 0 Y
+port 7 se
+rlabel met1 259 169 317 227 0 A
+port 8 se
+rlabel met1 274 227 302 356 0 A
+port 9 se
+rlabel met1 259 356 317 414 0 A
+port 10 se
+<< end >>
diff --git a/cells/mag/INVX2.mag b/cells/mag/INVX2.mag
index fd003ab..c4ef321 100644
--- a/cells/mag/INVX2.mag
+++ b/cells/mag/INVX2.mag
@@ -1,103 +1,191 @@
 magic
-# Generated by librecell
 tech sky130A
-timestamp 1624703079
+magscale 1 2
+timestamp 1624887584
+<< checkpaint >>
+rect -1260 -1374 11260 2038
 << nwell >>
-rect 0 179 288 333
-<< viali >>
-rect 16 -9 33 9
-rect 64 -9 81 9
-rect 112 -9 129 9
-rect 160 -9 177 9
-rect 208 -9 225 9
-rect 256 -9 273 9
-rect 184 34 201 51
-rect 64 50 81 67
-rect 136 91 153 108
-rect 136 184 153 201
-rect 64 226 81 243
-rect 184 282 201 299
-rect 16 325 33 342
-rect 64 325 81 342
-rect 112 325 129 342
-rect 160 325 177 342
-rect 208 325 225 342
-rect 256 325 273 342
-<< poly >>
-rect 137 11 152 83
-rect 128 83 161 116
-rect 128 176 161 209
-rect 137 209 152 322
-<< properties >>
-string FIXED_BBOX 0 0 288 333
-<< li1 >>
-rect 0 -24 288 24
-rect 176 24 209 59
-rect 56 42 89 75
-rect 128 83 161 116
-rect 128 176 161 209
-rect 56 218 89 251
-rect 176 274 209 309
-rect 0 309 288 357
-<< met1 >>
-rect 0 -24 288 24
-rect 178 24 207 57
-rect 130 85 159 114
-rect 137 114 151 178
-rect 130 178 159 207
-rect 58 44 87 73
-rect 65 73 79 220
-rect 58 220 87 249
-rect 178 276 207 309
-rect 0 309 288 357
-<< li1 >>
-<< met1 >>
-<< li1 >>
-<< met1 >>
-rect 0 -24 288 24
-rect 130 85 159 114
-rect 137 114 151 178
-rect 130 178 159 207
-rect 58 44 87 73
-rect 65 73 79 220
-rect 58 220 87 249
-rect 0 309 288 357
-<< ndiffusion >>
-rect 58 24 231 66
-rect 58 66 87 73
-<< pdiffusion >>
-rect 58 220 87 225
-rect 58 225 231 309
-<< polycont >>
-rect 136 91 153 108
-rect 136 184 153 201
-<< pdiffc >>
-rect 64 226 81 243
-rect 184 282 201 299
+rect 0 358 576 666
+<< nmos >>
+rect 273 48 303 132
+<< pmos >>
+rect 273 450 303 618
+<< ndiff >>
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 132 173 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 102 461 132
+rect 303 68 367 102
+rect 401 68 461 102
+rect 303 48 461 68
+<< pdiff >>
+rect 115 485 273 618
+rect 115 451 127 485
+rect 161 451 273 485
+rect 115 450 273 451
+rect 303 598 461 618
+rect 303 564 367 598
+rect 401 564 461 598
+rect 303 450 461 564
+rect 115 439 173 450
 << ndiffc >>
-rect 184 34 201 51
-rect 64 50 81 67
-<< allnactivetap >>
-<< allpactivetap >>
+rect 127 100 161 134
+rect 367 68 401 102
+<< pdiffc >>
+rect 127 451 161 485
+rect 367 564 401 598
+<< poly >>
+rect 273 618 303 644
+rect 273 418 303 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 273 132 303 165
+rect 273 22 303 48
+<< polycont >>
+rect 271 368 305 402
+rect 271 181 305 215
+<< locali >>
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 576 683
+rect 31 618 545 649
+rect 351 598 417 618
+rect 351 564 367 598
+rect 401 564 417 598
+rect 351 548 417 564
+rect 111 485 177 501
+rect 111 451 127 485
+rect 161 451 177 485
+rect 111 435 177 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 111 84 177 100
+rect 351 102 417 118
+rect 351 68 367 102
+rect 401 68 417 102
+rect 351 48 417 68
+rect 31 17 545 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 576 17
+<< viali >>
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 367 564 401 598
+rect 127 451 161 485
+rect 271 368 305 402
+rect 271 181 305 215
+rect 127 100 161 134
+rect 367 68 401 102
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+<< metal1 >>
+rect 0 683 576 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 576 683
+rect 0 618 576 649
+rect 355 598 413 618
+rect 355 564 367 598
+rect 401 564 413 598
+rect 355 552 413 564
+rect 115 485 173 497
+rect 115 451 127 485
+rect 161 451 173 485
+rect 115 439 173 451
+rect 130 146 158 439
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 368 317 402
+rect 259 356 317 368
+rect 274 227 302 356
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 181 317 215
+rect 259 169 317 181
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 115 88 173 100
+rect 355 102 413 114
+rect 355 68 367 102
+rect 401 68 413 102
+rect 355 48 413 68
+rect 0 17 576 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 576 17
+rect 0 -48 576 -17
 << labels >>
-rlabel li1 0 309 288 357 0 VDD
+rlabel metal1 0 618 576 714 0 VDD
 port 1 se
-rlabel met1 0 309 288 357 0 VDD
+rlabel metal1 0 618 576 714 0 VDD
 port 2 se
-rlabel li1 0 -24 288 24 0 GND
+rlabel metal1 0 -48 576 48 0 GND
 port 3 se
-rlabel met1 0 -24 288 24 0 GND
+rlabel metal1 0 -48 576 48 0 GND
 port 4 se
-rlabel met1 58 44 87 73 0 Y
+rlabel metal1 115 88 173 146 0 Y
 port 5 se
-rlabel met1 65 73 79 220 0 Y
+rlabel metal1 130 146 158 439 0 Y
 port 6 se
-rlabel met1 58 220 87 249 0 Y
+rlabel metal1 115 439 173 497 0 Y
 port 7 se
-rlabel met1 130 85 159 114 0 A
+rlabel metal1 259 169 317 227 0 A
 port 8 se
-rlabel met1 137 114 151 178 0 A
+rlabel metal1 274 227 302 356 0 A
 port 9 se
-rlabel met1 130 178 159 207 0 A
+rlabel metal1 259 356 317 414 0 A
 port 10 se
+rlabel locali 0 -17 576 17 4 GND
+port 3 se
+rlabel locali 31 17 545 48 4 GND
+port 3 se
+rlabel locali 0 649 576 683 4 VDD
+port 1 se
+rlabel locali 31 618 545 649 4 VDD
+port 1 se
+<< properties >>
+string FIXED_BBOX 0 0 576 666
 << end >>
diff --git a/cells/mag/INVX2.mag.beforemagic b/cells/mag/INVX2.mag.beforemagic
new file mode 100644
index 0000000..8c0f0f8
--- /dev/null
+++ b/cells/mag/INVX2.mag.beforemagic
@@ -0,0 +1,104 @@
+magic
+# Generated by librecell
+tech sky130A
+magscale 1 2
+timestamp 1624753191
+<< nwell >>
+rect 0 358 576 666
+<< viali >>
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 367 68 401 102
+rect 127 100 161 134
+rect 271 181 305 215
+rect 271 368 305 402
+rect 127 451 161 485
+rect 367 564 401 598
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+<< poly >>
+rect 273 22 303 165
+rect 255 165 321 231
+rect 255 352 321 418
+rect 273 418 303 644
+<< properties >>
+string FIXED_BBOX 0 0 576 666
+<< li1 >>
+rect 0 -48 576 48
+rect 351 48 417 118
+rect 111 84 177 150
+rect 255 165 321 231
+rect 255 352 321 418
+rect 111 435 177 501
+rect 351 548 417 618
+rect 0 618 576 714
+<< met1 >>
+rect 0 -48 576 48
+rect 355 48 413 114
+rect 259 169 317 227
+rect 274 227 302 356
+rect 259 356 317 414
+rect 115 88 173 146
+rect 130 146 158 439
+rect 115 439 173 497
+rect 355 552 413 618
+rect 0 618 576 714
+<< li1 >>
+<< met1 >>
+<< li1 >>
+<< met1 >>
+rect 0 -48 576 48
+rect 259 169 317 227
+rect 274 227 302 356
+rect 259 356 317 414
+rect 115 88 173 146
+rect 130 146 158 439
+rect 115 439 173 497
+rect 0 618 576 714
+<< ndiffusion >>
+rect 115 48 461 132
+rect 115 132 173 146
+<< pdiffusion >>
+rect 115 439 173 450
+rect 115 450 461 618
+<< polycont >>
+rect 271 181 305 215
+rect 271 368 305 402
+<< pdiffc >>
+rect 127 451 161 485
+rect 367 564 401 598
+<< ndiffc >>
+rect 367 68 401 102
+rect 127 100 161 134
+<< allnactivetap >>
+<< allpactivetap >>
+<< labels >>
+rlabel li1 0 618 576 714 0 VDD
+port 1 se
+rlabel met1 0 618 576 714 0 VDD
+port 2 se
+rlabel li1 0 -48 576 48 0 GND
+port 3 se
+rlabel met1 0 -48 576 48 0 GND
+port 4 se
+rlabel met1 115 88 173 146 0 Y
+port 5 se
+rlabel met1 130 146 158 439 0 Y
+port 6 se
+rlabel met1 115 439 173 497 0 Y
+port 7 se
+rlabel met1 259 169 317 227 0 A
+port 8 se
+rlabel met1 274 227 302 356 0 A
+port 9 se
+rlabel met1 259 356 317 414 0 A
+port 10 se
+<< end >>
diff --git a/cells/mag/INVX4.mag b/cells/mag/INVX4.mag
index 9b44b5b..60e130d 100644
--- a/cells/mag/INVX4.mag
+++ b/cells/mag/INVX4.mag
@@ -1,293 +1,308 @@
 magic
 tech sky130A
-timestamp 1624703114
+magscale 1 2
+timestamp 1624887585
+<< checkpaint >>
+rect -1260 -1374 11260 2038
 << nwell >>
-rect 0 179 432 333
+rect 0 358 864 666
 << nmos >>
-rect 137 24 152 66
-rect 281 24 296 66
+rect 273 48 303 132
+rect 561 48 591 132
 << pmos >>
-rect 137 225 152 309
-rect 281 225 296 309
+rect 273 450 303 618
+rect 561 450 591 618
 << ndiff >>
-rect 58 67 87 73
-rect 58 50 64 67
-rect 81 66 87 67
-rect 322 67 351 73
-rect 322 66 328 67
-rect 81 50 137 66
-rect 58 24 137 50
-rect 152 51 281 66
-rect 152 34 184 51
-rect 201 34 281 51
-rect 152 24 281 34
-rect 296 50 328 66
-rect 345 66 351 67
-rect 345 50 375 66
-rect 296 24 375 50
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 132 173 134
+rect 643 134 701 146
+rect 643 132 655 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 102 561 132
+rect 303 68 367 102
+rect 401 68 561 102
+rect 303 48 561 68
+rect 591 100 655 132
+rect 689 132 701 134
+rect 689 100 749 132
+rect 591 48 749 100
 << pdiff >>
-rect 58 243 137 309
-rect 58 226 64 243
-rect 81 226 137 243
-rect 58 225 137 226
-rect 152 299 281 309
-rect 152 282 184 299
-rect 201 282 281 299
-rect 152 225 281 282
-rect 296 243 375 309
-rect 296 226 328 243
-rect 345 226 375 243
-rect 296 225 375 226
-rect 58 220 87 225
-rect 322 220 351 225
+rect 115 485 273 618
+rect 115 451 127 485
+rect 161 451 273 485
+rect 115 450 273 451
+rect 303 598 561 618
+rect 303 564 367 598
+rect 401 564 561 598
+rect 303 450 561 564
+rect 591 485 749 618
+rect 591 451 655 485
+rect 689 451 749 485
+rect 591 450 749 451
+rect 115 439 173 450
+rect 643 439 701 450
 << ndiffc >>
-rect 64 50 81 67
-rect 184 34 201 51
-rect 328 50 345 67
+rect 127 100 161 134
+rect 367 68 401 102
+rect 655 100 689 134
 << pdiffc >>
-rect 64 226 81 243
-rect 184 282 201 299
-rect 328 226 345 243
+rect 127 451 161 485
+rect 367 564 401 598
+rect 655 451 689 485
 << poly >>
-rect 137 309 152 322
-rect 281 309 296 322
-rect 137 209 152 225
-rect 281 209 296 225
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 91 305 108
-rect 272 83 305 91
-rect 137 66 152 83
-rect 281 66 296 83
-rect 137 11 152 24
-rect 281 11 296 24
+rect 273 618 303 644
+rect 561 618 591 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 273 22 303 48
+rect 561 22 591 48
 << polycont >>
-rect 136 184 153 201
-rect 280 184 297 201
-rect 136 91 153 108
-rect 280 91 297 108
+rect 271 368 305 402
+rect 559 368 593 402
+rect 271 181 305 215
+rect 559 181 593 215
 << locali >>
-rect 0 342 432 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 432 342
-rect 0 309 432 325
-rect 176 299 209 309
-rect 176 282 184 299
-rect 201 282 209 299
-rect 176 274 209 282
-rect 56 243 89 251
-rect 56 226 64 243
-rect 81 226 89 243
-rect 56 218 89 226
-rect 320 243 353 251
-rect 320 226 328 243
-rect 345 226 353 243
-rect 320 218 353 226
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 303 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 92 305 108
-rect 297 91 303 92
-rect 272 83 303 91
-rect 56 67 89 75
-rect 56 50 64 67
-rect 81 50 89 67
-rect 320 67 353 75
-rect 56 42 89 50
-rect 176 51 209 59
-rect 176 34 184 51
-rect 201 34 209 51
-rect 320 50 328 67
-rect 345 50 353 67
-rect 320 42 353 50
-rect 176 24 209 34
-rect 0 9 432 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 432 9
-rect 0 -24 432 -9
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 864 683
+rect 31 618 833 649
+rect 351 598 417 618
+rect 351 564 367 598
+rect 401 564 417 598
+rect 351 548 417 564
+rect 111 485 177 501
+rect 111 451 127 485
+rect 161 451 177 485
+rect 111 435 177 451
+rect 639 485 705 501
+rect 639 451 655 485
+rect 689 451 705 485
+rect 639 435 705 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 605 418
+rect 543 368 559 402
+rect 593 401 605 402
+rect 593 368 609 401
+rect 543 352 609 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 184 609 215
+rect 593 181 605 184
+rect 543 165 605 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 639 134 705 150
+rect 111 84 177 100
+rect 351 102 417 118
+rect 351 68 367 102
+rect 401 68 417 102
+rect 639 100 655 134
+rect 689 100 705 134
+rect 639 84 705 100
+rect 351 48 417 68
+rect 31 17 833 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 864 17
 << viali >>
-rect 16 325 33 342
-rect 64 325 81 342
-rect 112 325 129 342
-rect 160 325 177 342
-rect 208 325 225 342
-rect 256 325 273 342
-rect 304 325 321 342
-rect 352 325 369 342
-rect 400 325 417 342
-rect 184 282 201 299
-rect 64 226 81 243
-rect 328 226 345 243
-rect 136 184 153 201
-rect 280 184 297 201
-rect 136 91 153 108
-rect 280 91 297 108
-rect 64 50 81 67
-rect 328 50 345 67
-rect 16 -9 33 9
-rect 64 -9 81 9
-rect 112 -9 129 9
-rect 160 -9 177 9
-rect 208 -9 225 9
-rect 256 -9 273 9
-rect 304 -9 321 9
-rect 352 -9 369 9
-rect 400 -9 417 9
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 367 564 401 598
+rect 127 451 161 485
+rect 655 451 689 485
+rect 271 368 305 402
+rect 559 368 593 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 127 100 161 134
+rect 367 68 401 102
+rect 655 100 689 134
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
 << metal1 >>
-rect 0 342 432 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 432 342
-rect 0 309 432 325
-rect 178 299 207 309
-rect 178 282 184 299
-rect 201 282 207 299
-rect 178 276 207 282
-rect 58 243 87 249
-rect 58 226 64 243
-rect 81 226 87 243
-rect 58 220 87 226
-rect 322 243 351 249
-rect 322 226 328 243
-rect 345 226 351 243
-rect 322 220 351 226
-rect 65 73 79 220
-rect 130 201 159 207
-rect 130 184 136 201
-rect 153 184 159 201
-rect 130 178 159 184
-rect 274 201 303 207
-rect 274 184 280 201
-rect 297 184 303 201
-rect 274 178 303 184
-rect 137 114 151 178
-rect 281 114 295 178
-rect 130 108 159 114
-rect 130 91 136 108
-rect 153 106 159 108
-rect 274 108 303 114
-rect 274 106 280 108
-rect 153 92 280 106
-rect 153 91 159 92
-rect 130 85 159 91
-rect 274 91 280 92
-rect 297 91 303 108
-rect 274 85 303 91
-rect 329 73 343 220
-rect 58 67 87 73
-rect 58 50 64 67
-rect 81 66 87 67
-rect 322 67 351 73
-rect 322 66 328 67
-rect 81 52 328 66
-rect 81 50 87 52
-rect 58 44 87 50
-rect 322 50 328 52
-rect 345 50 351 67
-rect 322 44 351 50
-rect 0 9 432 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 432 9
-rect 0 -24 432 -9
+rect 0 683 864 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 864 683
+rect 0 618 864 649
+rect 355 598 413 618
+rect 355 564 367 598
+rect 401 564 413 598
+rect 355 552 413 564
+rect 115 485 173 497
+rect 115 451 127 485
+rect 161 482 173 485
+rect 643 485 701 497
+rect 643 482 655 485
+rect 161 454 655 482
+rect 161 451 173 454
+rect 115 439 173 451
+rect 643 451 655 454
+rect 689 451 701 485
+rect 643 439 701 451
+rect 130 146 158 439
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 399 317 402
+rect 547 402 605 414
+rect 547 399 559 402
+rect 305 371 559 399
+rect 305 368 317 371
+rect 259 356 317 368
+rect 547 368 559 371
+rect 593 368 605 402
+rect 547 356 605 368
+rect 274 227 302 356
+rect 562 227 590 356
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 181 317 215
+rect 259 169 317 181
+rect 547 215 605 227
+rect 547 181 559 215
+rect 593 181 605 215
+rect 547 169 605 181
+rect 658 146 686 439
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 643 134 701 146
+rect 115 88 173 100
+rect 355 102 413 114
+rect 355 68 367 102
+rect 401 68 413 102
+rect 643 100 655 134
+rect 689 100 701 134
+rect 643 88 701 100
+rect 355 48 413 68
+rect 0 17 864 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 864 17
+rect 0 -48 864 -17
 << labels >>
-rlabel locali 0 309 432 357 0 VDD
+rlabel metal1 0 618 864 714 0 VDD
 port 1 se
-rlabel metal1 0 309 432 357 0 VDD
+rlabel metal1 0 618 864 714 0 VDD
 port 2 se
-rlabel locali 0 -24 432 24 0 GND
+rlabel metal1 0 -48 864 48 0 GND
 port 3 se
-rlabel metal1 0 -24 432 24 0 GND
+rlabel metal1 0 -48 864 48 0 GND
 port 4 se
-rlabel metal1 58 44 87 52 0 Y
+rlabel metal1 115 88 173 146 0 Y
 port 5 se
-rlabel metal1 322 44 351 52 0 Y
+rlabel metal1 643 88 701 146 0 Y
 port 6 se
-rlabel metal1 58 52 351 66 0 Y
+rlabel metal1 130 146 158 439 0 Y
 port 7 se
-rlabel metal1 58 66 87 73 0 Y
+rlabel metal1 658 146 686 439 0 Y
 port 8 se
-rlabel metal1 322 66 351 73 0 Y
+rlabel metal1 115 439 173 454 0 Y
 port 9 se
-rlabel metal1 65 73 79 220 0 Y
+rlabel metal1 643 439 701 454 0 Y
 port 10 se
-rlabel metal1 329 73 343 220 0 Y
+rlabel metal1 115 454 701 482 0 Y
 port 11 se
-rlabel metal1 58 220 87 249 0 Y
+rlabel metal1 115 482 173 497 0 Y
 port 12 se
-rlabel metal1 322 220 351 249 0 Y
+rlabel metal1 643 482 701 497 0 Y
 port 13 se
-rlabel metal1 130 85 159 92 0 A
+rlabel metal1 259 169 317 227 0 A
 port 14 se
-rlabel metal1 274 85 303 92 0 A
+rlabel metal1 547 169 605 227 0 A
 port 15 se
-rlabel metal1 130 92 303 106 0 A
+rlabel metal1 274 227 302 356 0 A
 port 16 se
-rlabel metal1 130 106 159 114 0 A
+rlabel metal1 562 227 590 356 0 A
 port 17 se
-rlabel metal1 274 106 303 114 0 A
+rlabel metal1 259 356 317 371 0 A
 port 18 se
-rlabel metal1 137 114 151 178 0 A
+rlabel metal1 547 356 605 371 0 A
 port 19 se
-rlabel metal1 281 114 295 178 0 A
+rlabel metal1 259 371 605 399 0 A
 port 20 se
-rlabel metal1 130 178 159 207 0 A
+rlabel metal1 259 399 317 414 0 A
 port 21 se
-rlabel metal1 274 178 303 207 0 A
+rlabel metal1 547 399 605 414 0 A
 port 22 se
+rlabel locali 0 -17 864 17 4 GND
+port 3 se
+rlabel locali 31 17 833 48 4 GND
+port 3 se
+rlabel locali 0 649 864 683 4 VDD
+port 1 se
+rlabel locali 31 618 833 649 4 VDD
+port 1 se
 << properties >>
-string FIXED_BBOX 0 0 432 333
+string FIXED_BBOX 0 0 864 666
 << end >>
diff --git a/cells/mag/INVX4.mag.beforemagic b/cells/mag/INVX4.mag.beforemagic
new file mode 100644
index 0000000..4ef0a02
--- /dev/null
+++ b/cells/mag/INVX4.mag.beforemagic
@@ -0,0 +1,300 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1624753286
+<< nwell >>
+rect 0 358 864 666
+<< nmos >>
+rect 273 48 303 132
+rect 561 48 591 132
+<< pmos >>
+rect 273 450 303 618
+rect 561 450 591 618
+<< ndiff >>
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 132 173 134
+rect 643 134 701 146
+rect 643 132 655 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 102 561 132
+rect 303 68 367 102
+rect 401 68 561 102
+rect 303 48 561 68
+rect 591 100 655 132
+rect 689 132 701 134
+rect 689 100 749 132
+rect 591 48 749 100
+<< pdiff >>
+rect 115 485 273 618
+rect 115 451 127 485
+rect 161 451 273 485
+rect 115 450 273 451
+rect 303 598 561 618
+rect 303 564 367 598
+rect 401 564 561 598
+rect 303 450 561 564
+rect 591 485 749 618
+rect 591 451 655 485
+rect 689 451 749 485
+rect 591 450 749 451
+rect 115 439 173 450
+rect 643 439 701 450
+<< ndiffc >>
+rect 127 100 161 134
+rect 367 68 401 102
+rect 655 100 689 134
+<< pdiffc >>
+rect 127 451 161 485
+rect 367 564 401 598
+rect 655 451 689 485
+<< poly >>
+rect 273 618 303 644
+rect 561 618 591 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 273 22 303 48
+rect 561 22 591 48
+<< polycont >>
+rect 271 368 305 402
+rect 559 368 593 402
+rect 271 181 305 215
+rect 559 181 593 215
+<< locali >>
+rect 0 683 864 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 864 683
+rect 0 618 864 649
+rect 351 598 417 618
+rect 351 564 367 598
+rect 401 564 417 598
+rect 351 548 417 564
+rect 111 485 177 501
+rect 111 451 127 485
+rect 161 451 177 485
+rect 111 435 177 451
+rect 639 485 705 501
+rect 639 451 655 485
+rect 689 451 705 485
+rect 639 435 705 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 605 418
+rect 543 368 559 402
+rect 593 401 605 402
+rect 593 368 609 401
+rect 543 352 609 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 184 609 215
+rect 593 181 605 184
+rect 543 165 605 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 639 134 705 150
+rect 111 84 177 100
+rect 351 102 417 118
+rect 351 68 367 102
+rect 401 68 417 102
+rect 639 100 655 134
+rect 689 100 705 134
+rect 639 84 705 100
+rect 351 48 417 68
+rect 0 17 864 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 864 17
+rect 0 -48 864 -17
+<< viali >>
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 367 564 401 598
+rect 127 451 161 485
+rect 655 451 689 485
+rect 271 368 305 402
+rect 559 368 593 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 127 100 161 134
+rect 367 68 401 102
+rect 655 100 689 134
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
+<< metal1 >>
+rect 0 683 864 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 864 683
+rect 0 618 864 649
+rect 355 598 413 618
+rect 355 564 367 598
+rect 401 564 413 598
+rect 355 552 413 564
+rect 115 485 173 497
+rect 115 451 127 485
+rect 161 482 173 485
+rect 643 485 701 497
+rect 643 482 655 485
+rect 161 454 655 482
+rect 161 451 173 454
+rect 115 439 173 451
+rect 643 451 655 454
+rect 689 451 701 485
+rect 643 439 701 451
+rect 130 146 158 439
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 399 317 402
+rect 547 402 605 414
+rect 547 399 559 402
+rect 305 371 559 399
+rect 305 368 317 371
+rect 259 356 317 368
+rect 547 368 559 371
+rect 593 368 605 402
+rect 547 356 605 368
+rect 274 227 302 356
+rect 562 227 590 356
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 181 317 215
+rect 259 169 317 181
+rect 547 215 605 227
+rect 547 181 559 215
+rect 593 181 605 215
+rect 547 169 605 181
+rect 658 146 686 439
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 643 134 701 146
+rect 115 88 173 100
+rect 355 102 413 114
+rect 355 68 367 102
+rect 401 68 413 102
+rect 643 100 655 134
+rect 689 100 701 134
+rect 643 88 701 100
+rect 355 48 413 68
+rect 0 17 864 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 864 17
+rect 0 -48 864 -17
+<< labels >>
+rlabel locali 0 618 864 714 0 VDD
+port 1 se
+rlabel metal1 0 618 864 714 0 VDD
+port 2 se
+rlabel locali 0 -48 864 48 0 GND
+port 3 se
+rlabel metal1 0 -48 864 48 0 GND
+port 4 se
+rlabel metal1 115 88 173 146 0 Y
+port 5 se
+rlabel metal1 643 88 701 146 0 Y
+port 6 se
+rlabel metal1 130 146 158 439 0 Y
+port 7 se
+rlabel metal1 658 146 686 439 0 Y
+port 8 se
+rlabel metal1 115 439 173 454 0 Y
+port 9 se
+rlabel metal1 643 439 701 454 0 Y
+port 10 se
+rlabel metal1 115 454 701 482 0 Y
+port 11 se
+rlabel metal1 115 482 173 497 0 Y
+port 12 se
+rlabel metal1 643 482 701 497 0 Y
+port 13 se
+rlabel metal1 259 169 317 227 0 A
+port 14 se
+rlabel metal1 547 169 605 227 0 A
+port 15 se
+rlabel metal1 274 227 302 356 0 A
+port 16 se
+rlabel metal1 562 227 590 356 0 A
+port 17 se
+rlabel metal1 259 356 317 371 0 A
+port 18 se
+rlabel metal1 547 356 605 371 0 A
+port 19 se
+rlabel metal1 259 371 605 399 0 A
+port 20 se
+rlabel metal1 259 399 317 414 0 A
+port 21 se
+rlabel metal1 547 399 605 414 0 A
+port 22 se
+<< properties >>
+string FIXED_BBOX 0 0 864 666
+<< end >>
diff --git a/cells/mag/INVX8.mag b/cells/mag/INVX8.mag
index c7f2e69..623b64d 100644
--- a/cells/mag/INVX8.mag
+++ b/cells/mag/INVX8.mag
@@ -1,496 +1,508 @@
 magic
 tech sky130A
-timestamp 1624703162
+magscale 1 2
+timestamp 1624887586
+<< checkpaint >>
+rect -1260 -1374 11260 2038
 << nwell >>
-rect 0 179 720 333
+rect 0 358 1440 666
 << nmos >>
-rect 137 24 152 66
-rect 281 24 296 66
-rect 425 24 440 66
-rect 569 24 584 66
+rect 273 48 303 132
+rect 561 48 591 132
+rect 849 48 879 132
+rect 1137 48 1167 132
 << pmos >>
-rect 137 225 152 309
-rect 281 225 296 309
-rect 425 225 440 309
-rect 569 225 584 309
+rect 273 450 303 618
+rect 561 450 591 618
+rect 849 450 879 618
+rect 1137 450 1167 618
 << ndiff >>
-rect 82 67 111 73
-rect 82 66 88 67
-rect 58 50 88 66
-rect 105 66 111 67
-rect 370 67 399 73
-rect 370 66 376 67
-rect 105 50 137 66
-rect 58 24 137 50
-rect 152 51 281 66
-rect 152 34 184 51
-rect 201 34 281 51
-rect 152 24 281 34
-rect 296 50 376 66
-rect 393 66 399 67
-rect 610 67 639 73
-rect 610 66 616 67
-rect 393 50 425 66
-rect 296 24 425 50
-rect 440 51 569 66
-rect 440 34 472 51
-rect 489 34 569 51
-rect 440 24 569 34
-rect 584 50 616 66
-rect 633 66 639 67
-rect 633 50 663 66
-rect 584 24 663 50
+rect 163 134 221 146
+rect 163 132 175 134
+rect 115 100 175 132
+rect 209 132 221 134
+rect 739 134 797 146
+rect 739 132 751 134
+rect 209 100 273 132
+rect 115 48 273 100
+rect 303 102 561 132
+rect 303 68 367 102
+rect 401 68 561 102
+rect 303 48 561 68
+rect 591 100 751 132
+rect 785 132 797 134
+rect 1219 134 1277 146
+rect 1219 132 1231 134
+rect 785 100 849 132
+rect 591 48 849 100
+rect 879 102 1137 132
+rect 879 68 943 102
+rect 977 68 1137 102
+rect 879 48 1137 68
+rect 1167 100 1231 132
+rect 1265 132 1277 134
+rect 1265 100 1325 132
+rect 1167 48 1325 100
 << pdiff >>
-rect 58 243 137 309
-rect 58 226 88 243
-rect 105 226 137 243
-rect 58 225 137 226
-rect 152 299 281 309
-rect 152 282 184 299
-rect 201 282 281 299
-rect 152 225 281 282
-rect 296 243 425 309
-rect 296 226 376 243
-rect 393 226 425 243
-rect 296 225 425 226
-rect 440 299 569 309
-rect 440 282 472 299
-rect 489 282 569 299
-rect 440 225 569 282
-rect 584 243 663 309
-rect 584 226 616 243
-rect 633 226 663 243
-rect 584 225 663 226
-rect 82 220 111 225
-rect 370 220 399 225
-rect 610 220 639 225
+rect 115 485 273 618
+rect 115 451 175 485
+rect 209 451 273 485
+rect 115 450 273 451
+rect 303 598 561 618
+rect 303 564 367 598
+rect 401 564 561 598
+rect 303 450 561 564
+rect 591 485 849 618
+rect 591 451 751 485
+rect 785 451 849 485
+rect 591 450 849 451
+rect 879 598 1137 618
+rect 879 564 943 598
+rect 977 564 1137 598
+rect 879 450 1137 564
+rect 1167 485 1325 618
+rect 1167 451 1231 485
+rect 1265 451 1325 485
+rect 1167 450 1325 451
+rect 163 439 221 450
+rect 739 439 797 450
+rect 1219 439 1277 450
 << ndiffc >>
-rect 88 50 105 67
-rect 184 34 201 51
-rect 376 50 393 67
-rect 472 34 489 51
-rect 616 50 633 67
+rect 175 100 209 134
+rect 367 68 401 102
+rect 751 100 785 134
+rect 943 68 977 102
+rect 1231 100 1265 134
 << pdiffc >>
-rect 88 226 105 243
-rect 184 282 201 299
-rect 376 226 393 243
-rect 472 282 489 299
-rect 616 226 633 243
+rect 175 451 209 485
+rect 367 564 401 598
+rect 751 451 785 485
+rect 943 564 977 598
+rect 1231 451 1265 485
 << poly >>
-rect 137 309 152 322
-rect 281 309 296 322
-rect 425 309 440 322
-rect 569 309 584 322
-rect 137 209 152 225
-rect 281 209 296 225
-rect 425 209 440 225
-rect 569 209 584 225
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 416 201 449 209
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 560 201 593 209
-rect 560 184 568 201
-rect 585 184 593 201
-rect 560 176 593 184
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 91 305 108
-rect 272 83 305 91
-rect 416 108 449 116
-rect 416 91 424 108
-rect 441 91 449 108
-rect 416 83 449 91
-rect 560 108 593 116
-rect 560 91 568 108
-rect 585 91 593 108
-rect 560 83 593 91
-rect 137 66 152 83
-rect 281 66 296 83
-rect 425 66 440 83
-rect 569 66 584 83
-rect 137 11 152 24
-rect 281 11 296 24
-rect 425 11 440 24
-rect 569 11 584 24
+rect 273 618 303 644
+rect 561 618 591 644
+rect 849 618 879 644
+rect 1137 618 1167 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 849 418 879 450
+rect 1137 418 1167 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 1119 402 1185 418
+rect 1119 368 1135 402
+rect 1169 368 1185 402
+rect 1119 352 1185 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 1119 215 1185 231
+rect 1119 181 1135 215
+rect 1169 181 1185 215
+rect 1119 165 1185 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 849 132 879 165
+rect 1137 132 1167 165
+rect 273 22 303 48
+rect 561 22 591 48
+rect 849 22 879 48
+rect 1137 22 1167 48
 << polycont >>
-rect 136 184 153 201
-rect 280 184 297 201
-rect 424 184 441 201
-rect 568 184 585 201
-rect 136 91 153 108
-rect 280 91 297 108
-rect 424 91 441 108
-rect 568 91 585 108
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 1135 368 1169 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+rect 1135 181 1169 215
 << locali >>
-rect 0 342 720 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 448 342
-rect 465 325 496 342
-rect 513 325 544 342
-rect 561 325 592 342
-rect 609 325 640 342
-rect 657 325 688 342
-rect 705 325 720 342
-rect 0 309 720 325
-rect 176 299 209 309
-rect 176 282 184 299
-rect 201 282 209 299
-rect 176 274 209 282
-rect 464 299 497 309
-rect 464 282 472 299
-rect 489 282 497 299
-rect 464 274 497 282
-rect 80 243 113 251
-rect 80 226 88 243
-rect 105 226 113 243
-rect 80 218 113 226
-rect 368 243 401 251
-rect 368 226 376 243
-rect 393 226 401 243
-rect 608 243 641 251
-rect 608 226 616 243
-rect 633 226 641 243
-rect 368 218 399 226
-rect 610 218 641 226
-rect 130 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 416 201 449 209
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 560 201 593 209
-rect 560 184 568 201
-rect 585 184 593 201
-rect 560 176 593 184
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 91 305 108
-rect 416 108 449 116
-rect 416 92 424 108
-rect 272 83 305 91
-rect 418 91 424 92
-rect 441 91 449 108
-rect 418 83 449 91
-rect 560 108 593 116
-rect 560 91 568 108
-rect 585 91 593 108
-rect 560 83 593 91
-rect 80 67 111 75
-rect 80 50 88 67
-rect 105 66 111 67
-rect 368 67 401 75
-rect 105 50 113 66
-rect 80 42 113 50
-rect 176 51 209 59
-rect 176 34 184 51
-rect 201 34 209 51
-rect 368 50 376 67
-rect 393 50 401 67
-rect 610 67 641 75
-rect 610 66 616 67
-rect 368 42 401 50
-rect 464 51 497 59
-rect 176 24 209 34
-rect 464 34 472 51
-rect 489 34 497 51
-rect 608 50 616 66
-rect 633 50 641 67
-rect 608 42 641 50
-rect 464 24 497 34
-rect 0 9 720 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 448 9
-rect 465 -9 496 9
-rect 513 -9 544 9
-rect 561 -9 592 9
-rect 609 -9 640 9
-rect 657 -9 688 9
-rect 705 -9 720 9
-rect 0 -24 720 -9
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1183 683
+rect 1217 649 1279 683
+rect 1313 649 1375 683
+rect 1409 649 1440 683
+rect 31 618 1409 649
+rect 351 598 417 618
+rect 351 564 367 598
+rect 401 564 417 598
+rect 351 548 417 564
+rect 927 598 993 618
+rect 927 564 943 598
+rect 977 564 993 598
+rect 927 548 993 564
+rect 159 485 225 501
+rect 159 451 175 485
+rect 209 451 225 485
+rect 159 435 225 451
+rect 735 485 801 501
+rect 735 451 751 485
+rect 785 452 801 485
+rect 1215 485 1281 501
+rect 1215 452 1231 485
+rect 785 451 797 452
+rect 735 435 797 451
+rect 1219 451 1231 452
+rect 1265 451 1281 485
+rect 1219 435 1281 451
+rect 259 402 321 418
+rect 259 401 271 402
+rect 255 368 271 401
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 1119 402 1185 418
+rect 1119 368 1135 402
+rect 1169 368 1185 402
+rect 1119 352 1185 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 831 215 897 231
+rect 831 184 847 215
+rect 543 165 609 181
+rect 835 181 847 184
+rect 881 181 897 215
+rect 835 165 897 181
+rect 1119 215 1185 231
+rect 1119 181 1135 215
+rect 1169 181 1185 215
+rect 1119 165 1185 181
+rect 159 134 221 150
+rect 159 100 175 134
+rect 209 131 221 134
+rect 735 134 801 150
+rect 209 100 225 131
+rect 159 84 225 100
+rect 351 102 417 118
+rect 351 68 367 102
+rect 401 68 417 102
+rect 735 100 751 134
+rect 785 100 801 134
+rect 1219 134 1281 150
+rect 1219 131 1231 134
+rect 735 84 801 100
+rect 927 102 993 118
+rect 351 48 417 68
+rect 927 68 943 102
+rect 977 68 993 102
+rect 1215 100 1231 131
+rect 1265 100 1281 134
+rect 1215 84 1281 100
+rect 927 48 993 68
+rect 31 17 1409 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1183 17
+rect 1217 -17 1279 17
+rect 1313 -17 1375 17
+rect 1409 -17 1440 17
 << viali >>
-rect 16 325 33 342
-rect 64 325 81 342
-rect 112 325 129 342
-rect 160 325 177 342
-rect 208 325 225 342
-rect 256 325 273 342
-rect 304 325 321 342
-rect 352 325 369 342
-rect 400 325 417 342
-rect 448 325 465 342
-rect 496 325 513 342
-rect 544 325 561 342
-rect 592 325 609 342
-rect 640 325 657 342
-rect 688 325 705 342
-rect 184 282 201 299
-rect 472 282 489 299
-rect 88 226 105 243
-rect 376 226 393 243
-rect 616 226 633 243
-rect 136 184 153 201
-rect 280 184 297 201
-rect 424 184 441 201
-rect 568 184 585 201
-rect 136 91 153 108
-rect 280 91 297 108
-rect 424 91 441 108
-rect 568 91 585 108
-rect 88 50 105 67
-rect 376 50 393 67
-rect 616 50 633 67
-rect 16 -9 33 9
-rect 64 -9 81 9
-rect 112 -9 129 9
-rect 160 -9 177 9
-rect 208 -9 225 9
-rect 256 -9 273 9
-rect 304 -9 321 9
-rect 352 -9 369 9
-rect 400 -9 417 9
-rect 448 -9 465 9
-rect 496 -9 513 9
-rect 544 -9 561 9
-rect 592 -9 609 9
-rect 640 -9 657 9
-rect 688 -9 705 9
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 895 649 929 683
+rect 991 649 1025 683
+rect 1087 649 1121 683
+rect 1183 649 1217 683
+rect 1279 649 1313 683
+rect 1375 649 1409 683
+rect 367 564 401 598
+rect 943 564 977 598
+rect 175 451 209 485
+rect 751 451 785 485
+rect 1231 451 1265 485
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 1135 368 1169 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+rect 1135 181 1169 215
+rect 175 100 209 134
+rect 751 100 785 134
+rect 1231 100 1265 134
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
+rect 895 -17 929 17
+rect 991 -17 1025 17
+rect 1087 -17 1121 17
+rect 1183 -17 1217 17
+rect 1279 -17 1313 17
+rect 1375 -17 1409 17
 << metal1 >>
-rect 0 342 720 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 448 342
-rect 465 325 496 342
-rect 513 325 544 342
-rect 561 325 592 342
-rect 609 325 640 342
-rect 657 325 688 342
-rect 705 325 720 342
-rect 0 309 720 325
-rect 178 299 207 309
-rect 178 282 184 299
-rect 201 282 207 299
-rect 178 276 207 282
-rect 466 299 495 309
-rect 466 282 472 299
-rect 489 282 495 299
-rect 466 276 495 282
-rect 82 243 111 249
-rect 82 226 88 243
-rect 105 226 111 243
-rect 82 220 111 226
-rect 370 243 399 249
-rect 370 226 376 243
-rect 393 241 399 243
-rect 610 243 639 249
-rect 610 241 616 243
-rect 393 227 616 241
-rect 393 226 399 227
-rect 370 220 399 226
-rect 610 226 616 227
-rect 633 226 639 243
-rect 610 220 639 226
-rect 89 73 103 220
-rect 130 201 159 207
-rect 130 184 136 201
-rect 153 200 159 201
-rect 274 201 303 207
-rect 274 200 280 201
-rect 153 186 280 200
-rect 153 184 159 186
-rect 130 178 159 184
-rect 274 184 280 186
-rect 297 200 303 201
-rect 418 201 447 207
-rect 418 200 424 201
-rect 297 186 424 200
-rect 297 184 303 186
-rect 274 178 303 184
-rect 418 184 424 186
-rect 441 200 447 201
-rect 562 201 591 207
-rect 562 200 568 201
-rect 441 186 568 200
-rect 441 184 447 186
-rect 418 178 447 184
-rect 562 184 568 186
-rect 585 184 591 201
-rect 562 178 591 184
-rect 137 114 151 178
-rect 281 114 295 178
-rect 425 114 439 178
-rect 569 114 583 178
-rect 130 108 159 114
-rect 130 91 136 108
-rect 153 91 159 108
-rect 130 85 159 91
-rect 274 108 303 114
-rect 274 91 280 108
-rect 297 91 303 108
-rect 274 85 303 91
-rect 418 108 447 114
-rect 418 91 424 108
-rect 441 91 447 108
-rect 418 85 447 91
-rect 562 108 591 114
-rect 562 91 568 108
-rect 585 91 591 108
-rect 562 85 591 91
-rect 617 73 631 220
-rect 82 67 111 73
-rect 82 50 88 67
-rect 105 66 111 67
-rect 370 67 399 73
-rect 370 66 376 67
-rect 105 52 376 66
-rect 105 50 111 52
-rect 82 44 111 50
-rect 370 50 376 52
-rect 393 66 399 67
-rect 610 67 639 73
-rect 610 66 616 67
-rect 393 52 616 66
-rect 393 50 399 52
-rect 370 44 399 50
-rect 610 50 616 52
-rect 633 50 639 67
-rect 610 44 639 50
-rect 0 9 720 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 448 9
-rect 465 -9 496 9
-rect 513 -9 544 9
-rect 561 -9 592 9
-rect 609 -9 640 9
-rect 657 -9 688 9
-rect 705 -9 720 9
-rect 0 -24 720 -9
+rect 0 683 1440 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1183 683
+rect 1217 649 1279 683
+rect 1313 649 1375 683
+rect 1409 649 1440 683
+rect 0 618 1440 649
+rect 355 598 413 618
+rect 355 564 367 598
+rect 401 564 413 598
+rect 355 552 413 564
+rect 931 598 989 618
+rect 931 564 943 598
+rect 977 564 989 598
+rect 931 552 989 564
+rect 163 485 221 497
+rect 163 451 175 485
+rect 209 482 221 485
+rect 739 485 797 497
+rect 739 482 751 485
+rect 209 454 751 482
+rect 209 451 221 454
+rect 163 439 221 451
+rect 739 451 751 454
+rect 785 482 797 485
+rect 1219 485 1277 497
+rect 1219 482 1231 485
+rect 785 454 1231 482
+rect 785 451 797 454
+rect 739 439 797 451
+rect 1219 451 1231 454
+rect 1265 451 1277 485
+rect 1219 439 1277 451
+rect 178 146 206 439
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 368 317 402
+rect 259 356 317 368
+rect 547 402 605 414
+rect 547 368 559 402
+rect 593 368 605 402
+rect 547 356 605 368
+rect 835 402 893 414
+rect 835 368 847 402
+rect 881 368 893 402
+rect 835 356 893 368
+rect 1123 402 1181 414
+rect 1123 368 1135 402
+rect 1169 368 1181 402
+rect 1123 356 1181 368
+rect 274 227 302 356
+rect 562 227 590 356
+rect 850 227 878 356
+rect 1138 227 1166 356
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 212 317 215
+rect 547 215 605 227
+rect 547 212 559 215
+rect 305 184 559 212
+rect 305 181 317 184
+rect 259 169 317 181
+rect 547 181 559 184
+rect 593 212 605 215
+rect 835 215 893 227
+rect 835 212 847 215
+rect 593 184 847 212
+rect 593 181 605 184
+rect 547 169 605 181
+rect 835 181 847 184
+rect 881 212 893 215
+rect 1123 215 1181 227
+rect 1123 212 1135 215
+rect 881 184 1135 212
+rect 881 181 893 184
+rect 835 169 893 181
+rect 1123 181 1135 184
+rect 1169 181 1181 215
+rect 1123 169 1181 181
+rect 1234 146 1262 439
+rect 163 134 221 146
+rect 163 100 175 134
+rect 209 100 221 134
+rect 163 88 221 100
+rect 739 134 797 146
+rect 739 100 751 134
+rect 785 131 797 134
+rect 1219 134 1277 146
+rect 1219 131 1231 134
+rect 785 103 1231 131
+rect 785 100 797 103
+rect 739 88 797 100
+rect 1219 100 1231 103
+rect 1265 100 1277 134
+rect 1219 88 1277 100
+rect 0 17 1440 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1183 17
+rect 1217 -17 1279 17
+rect 1313 -17 1375 17
+rect 1409 -17 1440 17
+rect 0 -48 1440 -17
 << labels >>
-rlabel locali 0 309 720 357 0 VDD
+rlabel metal1 0 618 1440 714 0 VDD
 port 1 se
-rlabel metal1 0 309 720 357 0 VDD
+rlabel metal1 0 618 1440 714 0 VDD
 port 2 se
-rlabel locali 0 -24 720 24 0 GND
+rlabel metal1 0 -48 1440 48 0 GND
 port 3 se
-rlabel metal1 0 -24 720 24 0 GND
+rlabel metal1 0 -48 1440 48 0 GND
 port 4 se
-rlabel metal1 82 44 111 52 0 Y
+rlabel metal1 739 88 797 103 0 Y
 port 5 se
-rlabel metal1 370 44 399 52 0 Y
+rlabel metal1 1219 88 1277 103 0 Y
 port 6 se
-rlabel metal1 610 44 639 52 0 Y
+rlabel metal1 739 103 1277 131 0 Y
 port 7 se
-rlabel metal1 82 52 639 66 0 Y
+rlabel metal1 163 88 221 146 0 Y
 port 8 se
-rlabel metal1 82 66 111 73 0 Y
+rlabel metal1 739 131 797 146 0 Y
 port 9 se
-rlabel metal1 370 66 399 73 0 Y
+rlabel metal1 1219 131 1277 146 0 Y
 port 10 se
-rlabel metal1 610 66 639 73 0 Y
+rlabel metal1 178 146 206 439 0 Y
 port 11 se
-rlabel metal1 89 73 103 220 0 Y
+rlabel metal1 1234 146 1262 439 0 Y
 port 12 se
-rlabel metal1 617 73 631 220 0 Y
+rlabel metal1 163 439 221 454 0 Y
 port 13 se
-rlabel metal1 370 220 399 227 0 Y
+rlabel metal1 739 439 797 454 0 Y
 port 14 se
-rlabel metal1 610 220 639 227 0 Y
+rlabel metal1 1219 439 1277 454 0 Y
 port 15 se
-rlabel metal1 370 227 639 241 0 Y
+rlabel metal1 163 454 1277 482 0 Y
 port 16 se
-rlabel metal1 82 220 111 249 0 Y
+rlabel metal1 163 482 221 497 0 Y
 port 17 se
-rlabel metal1 370 241 399 249 0 Y
+rlabel metal1 739 482 797 497 0 Y
 port 18 se
-rlabel metal1 610 241 639 249 0 Y
+rlabel metal1 1219 482 1277 497 0 Y
 port 19 se
-rlabel metal1 130 85 159 114 0 A
+rlabel metal1 259 169 317 184 0 A
 port 20 se
-rlabel metal1 274 85 303 114 0 A
+rlabel metal1 547 169 605 184 0 A
 port 21 se
-rlabel metal1 418 85 447 114 0 A
+rlabel metal1 835 169 893 184 0 A
 port 22 se
-rlabel metal1 562 85 591 114 0 A
+rlabel metal1 1123 169 1181 184 0 A
 port 23 se
-rlabel metal1 137 114 151 178 0 A
+rlabel metal1 259 184 1181 212 0 A
 port 24 se
-rlabel metal1 281 114 295 178 0 A
+rlabel metal1 259 212 317 227 0 A
 port 25 se
-rlabel metal1 425 114 439 178 0 A
+rlabel metal1 547 212 605 227 0 A
 port 26 se
-rlabel metal1 569 114 583 178 0 A
+rlabel metal1 835 212 893 227 0 A
 port 27 se
-rlabel metal1 130 178 159 186 0 A
+rlabel metal1 1123 212 1181 227 0 A
 port 28 se
-rlabel metal1 274 178 303 186 0 A
+rlabel metal1 274 227 302 356 0 A
 port 29 se
-rlabel metal1 418 178 447 186 0 A
+rlabel metal1 562 227 590 356 0 A
 port 30 se
-rlabel metal1 562 178 591 186 0 A
+rlabel metal1 850 227 878 356 0 A
 port 31 se
-rlabel metal1 130 186 591 200 0 A
+rlabel metal1 1138 227 1166 356 0 A
 port 32 se
-rlabel metal1 130 200 159 207 0 A
+rlabel metal1 259 356 317 414 0 A
 port 33 se
-rlabel metal1 274 200 303 207 0 A
+rlabel metal1 547 356 605 414 0 A
 port 34 se
-rlabel metal1 418 200 447 207 0 A
+rlabel metal1 835 356 893 414 0 A
 port 35 se
-rlabel metal1 562 200 591 207 0 A
+rlabel metal1 1123 356 1181 414 0 A
 port 36 se
+rlabel locali 0 -17 1440 17 4 GND
+port 3 se
+rlabel locali 31 17 1409 48 4 GND
+port 3 se
+rlabel locali 0 649 1440 683 4 VDD
+port 1 se
+rlabel locali 31 618 1409 649 4 VDD
+port 1 se
 << properties >>
-string FIXED_BBOX 0 0 720 333
+string FIXED_BBOX 0 0 1440 666
 << end >>
diff --git a/cells/mag/INVX8.mag.beforemagic b/cells/mag/INVX8.mag.beforemagic
new file mode 100644
index 0000000..e831bc1
--- /dev/null
+++ b/cells/mag/INVX8.mag.beforemagic
@@ -0,0 +1,500 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1624753365
+<< nwell >>
+rect 0 358 1440 666
+<< nmos >>
+rect 273 48 303 132
+rect 561 48 591 132
+rect 849 48 879 132
+rect 1137 48 1167 132
+<< pmos >>
+rect 273 450 303 618
+rect 561 450 591 618
+rect 849 450 879 618
+rect 1137 450 1167 618
+<< ndiff >>
+rect 163 134 221 146
+rect 163 132 175 134
+rect 115 100 175 132
+rect 209 132 221 134
+rect 739 134 797 146
+rect 739 132 751 134
+rect 209 100 273 132
+rect 115 48 273 100
+rect 303 102 561 132
+rect 303 68 367 102
+rect 401 68 561 102
+rect 303 48 561 68
+rect 591 100 751 132
+rect 785 132 797 134
+rect 1219 134 1277 146
+rect 1219 132 1231 134
+rect 785 100 849 132
+rect 591 48 849 100
+rect 879 102 1137 132
+rect 879 68 943 102
+rect 977 68 1137 102
+rect 879 48 1137 68
+rect 1167 100 1231 132
+rect 1265 132 1277 134
+rect 1265 100 1325 132
+rect 1167 48 1325 100
+<< pdiff >>
+rect 115 485 273 618
+rect 115 451 175 485
+rect 209 451 273 485
+rect 115 450 273 451
+rect 303 598 561 618
+rect 303 564 367 598
+rect 401 564 561 598
+rect 303 450 561 564
+rect 591 485 849 618
+rect 591 451 751 485
+rect 785 451 849 485
+rect 591 450 849 451
+rect 879 598 1137 618
+rect 879 564 943 598
+rect 977 564 1137 598
+rect 879 450 1137 564
+rect 1167 485 1325 618
+rect 1167 451 1231 485
+rect 1265 451 1325 485
+rect 1167 450 1325 451
+rect 163 439 221 450
+rect 739 439 797 450
+rect 1219 439 1277 450
+<< ndiffc >>
+rect 175 100 209 134
+rect 367 68 401 102
+rect 751 100 785 134
+rect 943 68 977 102
+rect 1231 100 1265 134
+<< pdiffc >>
+rect 175 451 209 485
+rect 367 564 401 598
+rect 751 451 785 485
+rect 943 564 977 598
+rect 1231 451 1265 485
+<< poly >>
+rect 273 618 303 644
+rect 561 618 591 644
+rect 849 618 879 644
+rect 1137 618 1167 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 849 418 879 450
+rect 1137 418 1167 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 1119 402 1185 418
+rect 1119 368 1135 402
+rect 1169 368 1185 402
+rect 1119 352 1185 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 1119 215 1185 231
+rect 1119 181 1135 215
+rect 1169 181 1185 215
+rect 1119 165 1185 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 849 132 879 165
+rect 1137 132 1167 165
+rect 273 22 303 48
+rect 561 22 591 48
+rect 849 22 879 48
+rect 1137 22 1167 48
+<< polycont >>
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 1135 368 1169 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+rect 1135 181 1169 215
+<< locali >>
+rect 0 683 1440 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1183 683
+rect 1217 649 1279 683
+rect 1313 649 1375 683
+rect 1409 649 1440 683
+rect 0 618 1440 649
+rect 351 598 417 618
+rect 351 564 367 598
+rect 401 564 417 598
+rect 351 548 417 564
+rect 927 598 993 618
+rect 927 564 943 598
+rect 977 564 993 598
+rect 927 548 993 564
+rect 159 485 225 501
+rect 159 451 175 485
+rect 209 451 225 485
+rect 159 435 225 451
+rect 735 485 801 501
+rect 735 451 751 485
+rect 785 452 801 485
+rect 1215 485 1281 501
+rect 1215 452 1231 485
+rect 785 451 797 452
+rect 735 435 797 451
+rect 1219 451 1231 452
+rect 1265 451 1281 485
+rect 1219 435 1281 451
+rect 259 402 321 418
+rect 259 401 271 402
+rect 255 368 271 401
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 1119 402 1185 418
+rect 1119 368 1135 402
+rect 1169 368 1185 402
+rect 1119 352 1185 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 831 215 897 231
+rect 831 184 847 215
+rect 543 165 609 181
+rect 835 181 847 184
+rect 881 181 897 215
+rect 835 165 897 181
+rect 1119 215 1185 231
+rect 1119 181 1135 215
+rect 1169 181 1185 215
+rect 1119 165 1185 181
+rect 159 134 221 150
+rect 159 100 175 134
+rect 209 131 221 134
+rect 735 134 801 150
+rect 209 100 225 131
+rect 159 84 225 100
+rect 351 102 417 118
+rect 351 68 367 102
+rect 401 68 417 102
+rect 735 100 751 134
+rect 785 100 801 134
+rect 1219 134 1281 150
+rect 1219 131 1231 134
+rect 735 84 801 100
+rect 927 102 993 118
+rect 351 48 417 68
+rect 927 68 943 102
+rect 977 68 993 102
+rect 1215 100 1231 131
+rect 1265 100 1281 134
+rect 1215 84 1281 100
+rect 927 48 993 68
+rect 0 17 1440 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1183 17
+rect 1217 -17 1279 17
+rect 1313 -17 1375 17
+rect 1409 -17 1440 17
+rect 0 -48 1440 -17
+<< viali >>
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 895 649 929 683
+rect 991 649 1025 683
+rect 1087 649 1121 683
+rect 1183 649 1217 683
+rect 1279 649 1313 683
+rect 1375 649 1409 683
+rect 367 564 401 598
+rect 943 564 977 598
+rect 175 451 209 485
+rect 751 451 785 485
+rect 1231 451 1265 485
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 1135 368 1169 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+rect 1135 181 1169 215
+rect 175 100 209 134
+rect 751 100 785 134
+rect 1231 100 1265 134
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
+rect 895 -17 929 17
+rect 991 -17 1025 17
+rect 1087 -17 1121 17
+rect 1183 -17 1217 17
+rect 1279 -17 1313 17
+rect 1375 -17 1409 17
+<< metal1 >>
+rect 0 683 1440 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1183 683
+rect 1217 649 1279 683
+rect 1313 649 1375 683
+rect 1409 649 1440 683
+rect 0 618 1440 649
+rect 355 598 413 618
+rect 355 564 367 598
+rect 401 564 413 598
+rect 355 552 413 564
+rect 931 598 989 618
+rect 931 564 943 598
+rect 977 564 989 598
+rect 931 552 989 564
+rect 163 485 221 497
+rect 163 451 175 485
+rect 209 482 221 485
+rect 739 485 797 497
+rect 739 482 751 485
+rect 209 454 751 482
+rect 209 451 221 454
+rect 163 439 221 451
+rect 739 451 751 454
+rect 785 482 797 485
+rect 1219 485 1277 497
+rect 1219 482 1231 485
+rect 785 454 1231 482
+rect 785 451 797 454
+rect 739 439 797 451
+rect 1219 451 1231 454
+rect 1265 451 1277 485
+rect 1219 439 1277 451
+rect 178 146 206 439
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 368 317 402
+rect 259 356 317 368
+rect 547 402 605 414
+rect 547 368 559 402
+rect 593 368 605 402
+rect 547 356 605 368
+rect 835 402 893 414
+rect 835 368 847 402
+rect 881 368 893 402
+rect 835 356 893 368
+rect 1123 402 1181 414
+rect 1123 368 1135 402
+rect 1169 368 1181 402
+rect 1123 356 1181 368
+rect 274 227 302 356
+rect 562 227 590 356
+rect 850 227 878 356
+rect 1138 227 1166 356
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 212 317 215
+rect 547 215 605 227
+rect 547 212 559 215
+rect 305 184 559 212
+rect 305 181 317 184
+rect 259 169 317 181
+rect 547 181 559 184
+rect 593 212 605 215
+rect 835 215 893 227
+rect 835 212 847 215
+rect 593 184 847 212
+rect 593 181 605 184
+rect 547 169 605 181
+rect 835 181 847 184
+rect 881 212 893 215
+rect 1123 215 1181 227
+rect 1123 212 1135 215
+rect 881 184 1135 212
+rect 881 181 893 184
+rect 835 169 893 181
+rect 1123 181 1135 184
+rect 1169 181 1181 215
+rect 1123 169 1181 181
+rect 1234 146 1262 439
+rect 163 134 221 146
+rect 163 100 175 134
+rect 209 100 221 134
+rect 163 88 221 100
+rect 739 134 797 146
+rect 739 100 751 134
+rect 785 131 797 134
+rect 1219 134 1277 146
+rect 1219 131 1231 134
+rect 785 103 1231 131
+rect 785 100 797 103
+rect 739 88 797 100
+rect 1219 100 1231 103
+rect 1265 100 1277 134
+rect 1219 88 1277 100
+rect 0 17 1440 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1183 17
+rect 1217 -17 1279 17
+rect 1313 -17 1375 17
+rect 1409 -17 1440 17
+rect 0 -48 1440 -17
+<< labels >>
+rlabel locali 0 618 1440 714 0 VDD
+port 1 se
+rlabel metal1 0 618 1440 714 0 VDD
+port 2 se
+rlabel locali 0 -48 1440 48 0 GND
+port 3 se
+rlabel metal1 0 -48 1440 48 0 GND
+port 4 se
+rlabel metal1 739 88 797 103 0 Y
+port 5 se
+rlabel metal1 1219 88 1277 103 0 Y
+port 6 se
+rlabel metal1 739 103 1277 131 0 Y
+port 7 se
+rlabel metal1 163 88 221 146 0 Y
+port 8 se
+rlabel metal1 739 131 797 146 0 Y
+port 9 se
+rlabel metal1 1219 131 1277 146 0 Y
+port 10 se
+rlabel metal1 178 146 206 439 0 Y
+port 11 se
+rlabel metal1 1234 146 1262 439 0 Y
+port 12 se
+rlabel metal1 163 439 221 454 0 Y
+port 13 se
+rlabel metal1 739 439 797 454 0 Y
+port 14 se
+rlabel metal1 1219 439 1277 454 0 Y
+port 15 se
+rlabel metal1 163 454 1277 482 0 Y
+port 16 se
+rlabel metal1 163 482 221 497 0 Y
+port 17 se
+rlabel metal1 739 482 797 497 0 Y
+port 18 se
+rlabel metal1 1219 482 1277 497 0 Y
+port 19 se
+rlabel metal1 259 169 317 184 0 A
+port 20 se
+rlabel metal1 547 169 605 184 0 A
+port 21 se
+rlabel metal1 835 169 893 184 0 A
+port 22 se
+rlabel metal1 1123 169 1181 184 0 A
+port 23 se
+rlabel metal1 259 184 1181 212 0 A
+port 24 se
+rlabel metal1 259 212 317 227 0 A
+port 25 se
+rlabel metal1 547 212 605 227 0 A
+port 26 se
+rlabel metal1 835 212 893 227 0 A
+port 27 se
+rlabel metal1 1123 212 1181 227 0 A
+port 28 se
+rlabel metal1 274 227 302 356 0 A
+port 29 se
+rlabel metal1 562 227 590 356 0 A
+port 30 se
+rlabel metal1 850 227 878 356 0 A
+port 31 se
+rlabel metal1 1138 227 1166 356 0 A
+port 32 se
+rlabel metal1 259 356 317 414 0 A
+port 33 se
+rlabel metal1 547 356 605 414 0 A
+port 34 se
+rlabel metal1 835 356 893 414 0 A
+port 35 se
+rlabel metal1 1123 356 1181 414 0 A
+port 36 se
+<< properties >>
+string FIXED_BBOX 0 0 1440 666
+<< end >>
diff --git a/cells/mag/MUX2X1.mag b/cells/mag/MUX2X1.mag
index 3a99413..55ca4f6 100644
--- a/cells/mag/MUX2X1.mag
+++ b/cells/mag/MUX2X1.mag
@@ -1,502 +1,512 @@
 magic
 tech sky130A
-timestamp 1624703219
+magscale 1 2
+timestamp 1624887587
+<< checkpaint >>
+rect -1260 -1374 11260 2038
 << nwell >>
-rect 0 179 864 333
+rect 0 358 1728 666
 << nmos >>
-rect 137 24 152 66
-rect 281 24 296 66
-rect 425 24 440 66
-rect 569 24 584 66
-rect 713 24 728 66
+rect 273 48 303 132
+rect 561 48 591 132
+rect 849 48 879 132
+rect 1137 48 1167 132
+rect 1425 48 1455 132
 << pmos >>
-rect 137 225 152 309
-rect 281 225 296 309
-rect 425 225 440 309
-rect 569 225 584 309
-rect 713 225 728 309
+rect 273 450 303 618
+rect 561 450 591 618
+rect 849 450 879 618
+rect 1137 450 1167 618
+rect 1425 450 1455 618
 << ndiff >>
-rect 58 67 87 73
-rect 58 50 64 67
-rect 81 66 87 67
-rect 514 67 543 73
-rect 514 66 520 67
-rect 81 50 137 66
-rect 58 24 137 50
-rect 152 51 281 66
-rect 152 34 184 51
-rect 201 34 281 51
-rect 152 24 281 34
-rect 296 24 425 66
-rect 440 50 520 66
-rect 537 66 543 67
-rect 537 50 569 66
-rect 440 24 569 50
-rect 584 24 713 66
-rect 728 51 807 66
-rect 728 34 760 51
-rect 777 34 807 51
-rect 728 24 807 34
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 132 173 134
+rect 1027 134 1085 146
+rect 1027 132 1039 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 102 561 132
+rect 303 68 367 102
+rect 401 68 561 102
+rect 303 48 561 68
+rect 591 48 849 132
+rect 879 100 1039 132
+rect 1073 132 1085 134
+rect 1073 100 1137 132
+rect 879 48 1137 100
+rect 1167 48 1425 132
+rect 1455 102 1613 132
+rect 1455 68 1519 102
+rect 1553 68 1613 102
+rect 1455 48 1613 68
 << pdiff >>
-rect 58 243 137 309
-rect 58 226 64 243
-rect 81 226 137 243
-rect 58 225 137 226
-rect 152 299 281 309
-rect 152 282 184 299
-rect 201 282 281 299
-rect 152 225 281 282
-rect 296 225 425 309
-rect 440 243 569 309
-rect 440 226 520 243
-rect 537 226 569 243
-rect 440 225 569 226
-rect 584 225 713 309
-rect 728 299 807 309
-rect 728 282 760 299
-rect 777 282 807 299
-rect 728 225 807 282
-rect 58 220 87 225
-rect 514 220 543 225
+rect 115 485 273 618
+rect 115 451 127 485
+rect 161 451 273 485
+rect 115 450 273 451
+rect 303 598 561 618
+rect 303 564 367 598
+rect 401 564 561 598
+rect 303 450 561 564
+rect 591 450 849 618
+rect 879 485 1137 618
+rect 879 451 1039 485
+rect 1073 451 1137 485
+rect 879 450 1137 451
+rect 1167 450 1425 618
+rect 1455 598 1613 618
+rect 1455 564 1519 598
+rect 1553 564 1613 598
+rect 1455 450 1613 564
+rect 115 439 173 450
+rect 1027 439 1085 450
 << ndiffc >>
-rect 64 50 81 67
-rect 184 34 201 51
-rect 520 50 537 67
-rect 760 34 777 51
+rect 127 100 161 134
+rect 367 68 401 102
+rect 1039 100 1073 134
+rect 1519 68 1553 102
 << pdiffc >>
-rect 64 226 81 243
-rect 184 282 201 299
-rect 520 226 537 243
-rect 760 282 777 299
+rect 127 451 161 485
+rect 367 564 401 598
+rect 1039 451 1073 485
+rect 1519 564 1553 598
 << poly >>
-rect 137 309 152 322
-rect 281 309 296 322
-rect 425 309 440 322
-rect 569 309 584 322
-rect 713 309 728 322
-rect 137 209 152 225
-rect 281 209 296 225
-rect 425 209 440 225
-rect 569 209 584 225
-rect 713 209 728 225
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 416 201 449 209
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 560 201 593 209
-rect 560 184 568 201
-rect 585 184 593 201
-rect 560 176 593 184
-rect 704 201 737 209
-rect 704 184 712 201
-rect 729 184 737 201
-rect 704 176 737 184
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 91 305 108
-rect 272 83 305 91
-rect 416 108 449 116
-rect 416 91 424 108
-rect 441 91 449 108
-rect 416 83 449 91
-rect 560 108 593 116
-rect 560 91 568 108
-rect 585 91 593 108
-rect 560 83 593 91
-rect 704 108 737 116
-rect 704 91 712 108
-rect 729 91 737 108
-rect 704 83 737 91
-rect 137 66 152 83
-rect 281 66 296 83
-rect 425 66 440 83
-rect 569 66 584 83
-rect 713 66 728 83
-rect 137 11 152 24
-rect 281 11 296 24
-rect 425 11 440 24
-rect 569 11 584 24
-rect 713 11 728 24
+rect 273 618 303 644
+rect 561 618 591 644
+rect 849 618 879 644
+rect 1137 618 1167 644
+rect 1425 618 1455 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 849 418 879 450
+rect 1137 418 1167 450
+rect 1425 418 1455 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 1119 402 1185 418
+rect 1119 368 1135 402
+rect 1169 368 1185 402
+rect 1119 352 1185 368
+rect 1407 402 1473 418
+rect 1407 368 1423 402
+rect 1457 368 1473 402
+rect 1407 352 1473 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 1119 215 1185 231
+rect 1119 181 1135 215
+rect 1169 181 1185 215
+rect 1119 165 1185 181
+rect 1407 215 1473 231
+rect 1407 181 1423 215
+rect 1457 181 1473 215
+rect 1407 165 1473 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 849 132 879 165
+rect 1137 132 1167 165
+rect 1425 132 1455 165
+rect 273 22 303 48
+rect 561 22 591 48
+rect 849 22 879 48
+rect 1137 22 1167 48
+rect 1425 22 1455 48
 << polycont >>
-rect 136 184 153 201
-rect 280 184 297 201
-rect 424 184 441 201
-rect 568 184 585 201
-rect 712 184 729 201
-rect 136 91 153 108
-rect 280 91 297 108
-rect 424 91 441 108
-rect 568 91 585 108
-rect 712 91 729 108
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 1135 368 1169 402
+rect 1423 368 1457 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+rect 1135 181 1169 215
+rect 1423 181 1457 215
 << locali >>
-rect 0 342 864 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 448 342
-rect 465 325 496 342
-rect 513 325 544 342
-rect 561 325 592 342
-rect 609 325 640 342
-rect 657 325 688 342
-rect 705 325 736 342
-rect 753 325 784 342
-rect 801 325 832 342
-rect 849 325 864 342
-rect 0 309 864 325
-rect 176 299 209 309
-rect 176 282 184 299
-rect 201 282 209 299
-rect 176 274 209 282
-rect 752 299 785 309
-rect 752 282 760 299
-rect 777 282 785 299
-rect 752 274 785 282
-rect 56 243 89 251
-rect 512 243 545 251
-rect 56 226 64 243
-rect 81 226 89 243
-rect 56 218 89 226
-rect 136 209 153 226
-rect 512 226 520 243
-rect 537 226 545 243
-rect 512 218 545 226
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 416 201 449 209
-rect 562 201 593 209
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 560 184 568 201
-rect 585 184 593 201
-rect 560 176 593 184
-rect 704 201 737 209
-rect 704 184 712 201
-rect 729 184 737 201
-rect 704 176 737 184
-rect 136 162 153 176
-rect 280 148 297 176
-rect 280 116 297 131
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 272 108 305 116
-rect 416 108 449 116
-rect 272 91 280 108
-rect 297 91 305 108
-rect 345 91 424 108
-rect 441 91 449 108
-rect 560 108 593 116
-rect 560 92 568 108
-rect 272 83 305 91
-rect 416 83 449 91
-rect 562 91 568 92
-rect 585 91 593 108
-rect 562 83 593 91
-rect 704 108 737 116
-rect 704 91 712 108
-rect 729 91 737 108
-rect 704 83 737 91
-rect 56 67 89 75
-rect 56 50 64 67
-rect 81 50 89 67
-rect 512 67 545 75
-rect 56 42 89 50
-rect 176 51 209 59
-rect 176 34 184 51
-rect 201 34 209 51
-rect 512 50 520 67
-rect 537 50 545 67
-rect 512 42 545 50
-rect 752 51 785 59
-rect 176 24 209 34
-rect 752 34 760 51
-rect 777 34 785 51
-rect 752 24 785 34
-rect 0 9 864 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 448 9
-rect 465 -9 496 9
-rect 513 -9 544 9
-rect 561 -9 592 9
-rect 609 -9 640 9
-rect 657 -9 688 9
-rect 705 -9 736 9
-rect 753 -9 784 9
-rect 801 -9 832 9
-rect 849 -9 864 9
-rect 0 -24 864 -9
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1183 683
+rect 1217 649 1279 683
+rect 1313 649 1375 683
+rect 1409 649 1471 683
+rect 1505 649 1567 683
+rect 1601 649 1663 683
+rect 1697 649 1728 683
+rect 31 618 1697 649
+rect 351 598 417 618
+rect 351 564 367 598
+rect 401 564 417 598
+rect 351 548 417 564
+rect 1503 598 1569 618
+rect 1503 564 1519 598
+rect 1553 564 1569 598
+rect 1503 548 1569 564
+rect 111 485 177 501
+rect 1023 485 1089 501
+rect 111 451 127 485
+rect 161 451 177 485
+rect 111 435 177 451
+rect 271 418 305 451
+rect 1023 451 1039 485
+rect 1073 451 1089 485
+rect 1023 435 1089 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 1123 402 1185 418
+rect 1123 401 1135 402
+rect 831 352 897 368
+rect 1119 368 1135 401
+rect 1169 368 1185 402
+rect 1119 352 1185 368
+rect 1407 402 1473 418
+rect 1407 368 1423 402
+rect 1457 368 1473 402
+rect 1407 352 1473 368
+rect 271 323 305 352
+rect 559 296 593 352
+rect 559 231 593 262
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 831 215 897 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 689 181 847 215
+rect 881 181 897 215
+rect 1119 215 1185 231
+rect 1119 184 1135 215
+rect 543 165 609 181
+rect 831 165 897 181
+rect 1123 181 1135 184
+rect 1169 181 1185 215
+rect 1123 165 1185 181
+rect 1407 215 1473 231
+rect 1407 181 1423 215
+rect 1457 181 1473 215
+rect 1407 165 1473 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 1023 134 1089 150
+rect 111 84 177 100
+rect 351 102 417 118
+rect 351 68 367 102
+rect 401 68 417 102
+rect 1023 100 1039 134
+rect 1073 100 1089 134
+rect 1023 84 1089 100
+rect 1503 102 1569 118
+rect 351 48 417 68
+rect 1503 68 1519 102
+rect 1553 68 1569 102
+rect 1503 48 1569 68
+rect 31 17 1697 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1183 17
+rect 1217 -17 1279 17
+rect 1313 -17 1375 17
+rect 1409 -17 1471 17
+rect 1505 -17 1567 17
+rect 1601 -17 1663 17
+rect 1697 -17 1728 17
 << viali >>
-rect 16 325 33 342
-rect 64 325 81 342
-rect 112 325 129 342
-rect 160 325 177 342
-rect 208 325 225 342
-rect 256 325 273 342
-rect 304 325 321 342
-rect 352 325 369 342
-rect 400 325 417 342
-rect 448 325 465 342
-rect 496 325 513 342
-rect 544 325 561 342
-rect 592 325 609 342
-rect 640 325 657 342
-rect 688 325 705 342
-rect 736 325 753 342
-rect 784 325 801 342
-rect 832 325 849 342
-rect 184 282 201 299
-rect 760 282 777 299
-rect 64 226 81 243
-rect 136 226 153 243
-rect 520 226 537 243
-rect 424 184 441 201
-rect 568 184 585 201
-rect 712 184 729 201
-rect 136 145 153 162
-rect 280 131 297 148
-rect 136 91 153 108
-rect 328 91 345 108
-rect 568 91 585 108
-rect 712 91 729 108
-rect 64 50 81 67
-rect 184 34 201 51
-rect 520 50 537 67
-rect 760 34 777 51
-rect 16 -9 33 9
-rect 64 -9 81 9
-rect 112 -9 129 9
-rect 160 -9 177 9
-rect 208 -9 225 9
-rect 256 -9 273 9
-rect 304 -9 321 9
-rect 352 -9 369 9
-rect 400 -9 417 9
-rect 448 -9 465 9
-rect 496 -9 513 9
-rect 544 -9 561 9
-rect 592 -9 609 9
-rect 640 -9 657 9
-rect 688 -9 705 9
-rect 736 -9 753 9
-rect 784 -9 801 9
-rect 832 -9 849 9
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 895 649 929 683
+rect 991 649 1025 683
+rect 1087 649 1121 683
+rect 1183 649 1217 683
+rect 1279 649 1313 683
+rect 1375 649 1409 683
+rect 1471 649 1505 683
+rect 1567 649 1601 683
+rect 1663 649 1697 683
+rect 367 564 401 598
+rect 1519 564 1553 598
+rect 127 451 161 485
+rect 271 451 305 485
+rect 1039 451 1073 485
+rect 847 368 881 402
+rect 1135 368 1169 402
+rect 1423 368 1457 402
+rect 271 289 305 323
+rect 559 262 593 296
+rect 271 181 305 215
+rect 655 181 689 215
+rect 1135 181 1169 215
+rect 1423 181 1457 215
+rect 127 100 161 134
+rect 367 68 401 102
+rect 1039 100 1073 134
+rect 1519 68 1553 102
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
+rect 895 -17 929 17
+rect 991 -17 1025 17
+rect 1087 -17 1121 17
+rect 1183 -17 1217 17
+rect 1279 -17 1313 17
+rect 1375 -17 1409 17
+rect 1471 -17 1505 17
+rect 1567 -17 1601 17
+rect 1663 -17 1697 17
 << metal1 >>
-rect 0 342 864 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 448 342
-rect 465 325 496 342
-rect 513 325 544 342
-rect 561 325 592 342
-rect 609 325 640 342
-rect 657 325 688 342
-rect 705 325 736 342
-rect 753 325 784 342
-rect 801 325 832 342
-rect 849 325 864 342
-rect 0 309 864 325
-rect 178 299 207 309
-rect 178 282 184 299
-rect 201 282 207 299
-rect 178 276 207 282
-rect 754 299 783 309
-rect 754 282 760 299
-rect 777 282 783 299
-rect 754 276 783 282
-rect 58 243 87 249
-rect 58 226 64 243
-rect 81 226 87 243
-rect 58 220 87 226
-rect 130 243 159 249
-rect 130 226 136 243
-rect 153 241 159 243
-rect 514 243 543 249
-rect 153 227 487 241
-rect 153 226 159 227
-rect 130 220 159 226
-rect 65 200 79 220
-rect 418 201 447 207
-rect 418 200 424 201
-rect 65 186 424 200
-rect 65 73 79 186
-rect 418 184 424 186
-rect 441 184 447 201
-rect 473 200 487 227
-rect 514 226 520 243
-rect 537 241 543 243
-rect 537 227 631 241
-rect 537 226 543 227
-rect 514 220 543 226
-rect 562 201 591 207
-rect 562 200 568 201
-rect 473 186 568 200
-rect 418 178 447 184
-rect 562 184 568 186
-rect 585 184 591 201
-rect 562 178 591 184
-rect 130 162 159 168
-rect 130 145 136 162
-rect 153 145 159 162
-rect 130 139 159 145
-rect 274 148 303 154
-rect 137 114 151 139
-rect 274 131 280 148
-rect 297 131 303 148
-rect 274 125 303 131
-rect 130 108 159 114
-rect 130 91 136 108
-rect 153 106 159 108
-rect 322 108 351 114
-rect 322 106 328 108
-rect 153 92 328 106
-rect 153 91 159 92
-rect 130 85 159 91
-rect 322 91 328 92
-rect 345 91 351 108
-rect 425 106 439 178
-rect 562 108 591 114
-rect 562 106 568 108
-rect 425 92 568 106
-rect 322 85 351 91
-rect 562 91 568 92
-rect 585 91 591 108
-rect 562 85 591 91
-rect 58 67 87 73
-rect 58 50 64 67
-rect 81 50 87 67
-rect 514 67 543 73
-rect 58 44 87 50
-rect 178 51 207 57
-rect 178 34 184 51
-rect 201 34 207 51
-rect 514 50 520 67
-rect 537 66 543 67
-rect 617 66 631 227
-rect 706 201 735 207
-rect 706 184 712 201
-rect 729 184 735 201
-rect 706 178 735 184
-rect 713 114 727 178
-rect 706 108 735 114
-rect 706 91 712 108
-rect 729 91 735 108
-rect 706 85 735 91
-rect 537 52 631 66
-rect 537 50 543 52
-rect 514 44 543 50
-rect 754 51 783 57
-rect 178 24 207 34
-rect 754 34 760 51
-rect 777 34 783 51
-rect 754 24 783 34
-rect 0 9 864 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 448 9
-rect 465 -9 496 9
-rect 513 -9 544 9
-rect 561 -9 592 9
-rect 609 -9 640 9
-rect 657 -9 688 9
-rect 705 -9 736 9
-rect 753 -9 784 9
-rect 801 -9 832 9
-rect 849 -9 864 9
-rect 0 -24 864 -9
+rect 0 683 1728 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1183 683
+rect 1217 649 1279 683
+rect 1313 649 1375 683
+rect 1409 649 1471 683
+rect 1505 649 1567 683
+rect 1601 649 1663 683
+rect 1697 649 1728 683
+rect 0 618 1728 649
+rect 355 598 413 618
+rect 355 564 367 598
+rect 401 564 413 598
+rect 355 552 413 564
+rect 1507 598 1565 618
+rect 1507 564 1519 598
+rect 1553 564 1565 598
+rect 1507 552 1565 564
+rect 115 485 173 497
+rect 115 451 127 485
+rect 161 451 173 485
+rect 115 439 173 451
+rect 259 485 317 497
+rect 259 451 271 485
+rect 305 482 317 485
+rect 1027 485 1085 497
+rect 305 454 974 482
+rect 305 451 317 454
+rect 259 439 317 451
+rect 130 399 158 439
+rect 835 402 893 414
+rect 835 399 847 402
+rect 130 371 847 399
+rect 130 146 158 371
+rect 835 368 847 371
+rect 881 368 893 402
+rect 946 399 974 454
+rect 1027 451 1039 485
+rect 1073 482 1085 485
+rect 1073 454 1262 482
+rect 1073 451 1085 454
+rect 1027 439 1085 451
+rect 1123 402 1181 414
+rect 1123 399 1135 402
+rect 946 371 1135 399
+rect 835 356 893 368
+rect 1123 368 1135 371
+rect 1169 368 1181 402
+rect 1123 356 1181 368
+rect 259 323 317 335
+rect 259 289 271 323
+rect 305 289 317 323
+rect 259 277 317 289
+rect 547 296 605 308
+rect 274 227 302 277
+rect 547 262 559 296
+rect 593 262 605 296
+rect 547 250 605 262
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 212 317 215
+rect 643 215 701 227
+rect 643 212 655 215
+rect 305 184 655 212
+rect 305 181 317 184
+rect 259 169 317 181
+rect 643 181 655 184
+rect 689 181 701 215
+rect 850 212 878 356
+rect 1123 215 1181 227
+rect 1123 212 1135 215
+rect 850 184 1135 212
+rect 643 169 701 181
+rect 1123 181 1135 184
+rect 1169 181 1181 215
+rect 1123 169 1181 181
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 1027 134 1085 146
+rect 115 88 173 100
+rect 355 102 413 114
+rect 355 68 367 102
+rect 401 68 413 102
+rect 1027 100 1039 134
+rect 1073 131 1085 134
+rect 1234 131 1262 454
+rect 1411 402 1469 414
+rect 1411 368 1423 402
+rect 1457 368 1469 402
+rect 1411 356 1469 368
+rect 1426 227 1454 356
+rect 1411 215 1469 227
+rect 1411 181 1423 215
+rect 1457 181 1469 215
+rect 1411 169 1469 181
+rect 1073 103 1262 131
+rect 1073 100 1085 103
+rect 1027 88 1085 100
+rect 1507 102 1565 114
+rect 355 48 413 68
+rect 1507 68 1519 102
+rect 1553 68 1565 102
+rect 1507 48 1565 68
+rect 0 17 1728 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1183 17
+rect 1217 -17 1279 17
+rect 1313 -17 1375 17
+rect 1409 -17 1471 17
+rect 1505 -17 1567 17
+rect 1601 -17 1663 17
+rect 1697 -17 1728 17
+rect 0 -48 1728 -17
 << labels >>
-rlabel locali 0 309 864 357 0 VDD
+rlabel metal1 0 618 1728 714 0 VDD
 port 1 se
-rlabel metal1 0 309 864 357 0 VDD
+rlabel metal1 0 618 1728 714 0 VDD
 port 2 se
-rlabel locali 0 -24 864 24 0 GND
+rlabel metal1 0 -48 1728 48 0 GND
 port 3 se
-rlabel metal1 0 -24 864 24 0 GND
+rlabel metal1 0 -48 1728 48 0 GND
 port 4 se
-rlabel metal1 514 44 543 52 0 Y
+rlabel metal1 1027 88 1085 103 0 Y
 port 5 se
-rlabel metal1 514 52 631 66 0 Y
+rlabel metal1 1027 103 1262 131 0 Y
 port 6 se
-rlabel metal1 514 66 543 73 0 Y
+rlabel metal1 1027 131 1085 146 0 Y
 port 7 se
-rlabel metal1 514 220 543 227 0 Y
+rlabel metal1 1027 439 1085 454 0 Y
 port 8 se
-rlabel metal1 617 66 631 227 0 Y
+rlabel metal1 1234 131 1262 454 0 Y
 port 9 se
-rlabel metal1 514 227 631 241 0 Y
+rlabel metal1 1027 454 1262 482 0 Y
 port 10 se
-rlabel metal1 514 241 543 249 0 Y
+rlabel metal1 1027 482 1085 497 0 Y
 port 11 se
-rlabel metal1 706 85 735 114 0 B
+rlabel metal1 259 169 317 184 0 S
 port 12 se
-rlabel metal1 713 114 727 178 0 B
+rlabel metal1 643 169 701 184 0 S
 port 13 se
-rlabel metal1 706 178 735 207 0 B
+rlabel metal1 259 184 701 212 0 S
 port 14 se
-rlabel metal1 130 85 159 92 0 S
+rlabel metal1 259 212 317 227 0 S
 port 15 se
-rlabel metal1 322 85 351 92 0 S
+rlabel metal1 643 212 701 227 0 S
 port 16 se
-rlabel metal1 130 92 351 106 0 S
+rlabel metal1 274 227 302 277 0 S
 port 17 se
-rlabel metal1 130 106 159 114 0 S
+rlabel metal1 259 277 317 335 0 S
 port 18 se
-rlabel metal1 322 106 351 114 0 S
+rlabel metal1 547 250 605 308 0 A
 port 19 se
-rlabel metal1 137 114 151 139 0 S
+rlabel metal1 1411 169 1469 227 0 B
 port 20 se
-rlabel metal1 130 139 159 168 0 S
+rlabel metal1 1426 227 1454 356 0 B
 port 21 se
-rlabel metal1 274 125 303 154 0 A
+rlabel metal1 1411 356 1469 414 0 B
 port 22 se
+rlabel locali 0 -17 1728 17 4 GND
+port 3 se
+rlabel locali 31 17 1697 48 4 GND
+port 3 se
+rlabel locali 0 649 1728 683 4 VDD
+port 1 se
+rlabel locali 31 618 1697 649 4 VDD
+port 1 se
 << properties >>
-string FIXED_BBOX 0 0 864 333
+string FIXED_BBOX 0 0 1728 666
 << end >>
diff --git a/cells/mag/MUX2X1.mag.beforemagic b/cells/mag/MUX2X1.mag.beforemagic
new file mode 100644
index 0000000..52c0110
--- /dev/null
+++ b/cells/mag/MUX2X1.mag.beforemagic
@@ -0,0 +1,504 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1624753424
+<< nwell >>
+rect 0 358 1728 666
+<< nmos >>
+rect 273 48 303 132
+rect 561 48 591 132
+rect 849 48 879 132
+rect 1137 48 1167 132
+rect 1425 48 1455 132
+<< pmos >>
+rect 273 450 303 618
+rect 561 450 591 618
+rect 849 450 879 618
+rect 1137 450 1167 618
+rect 1425 450 1455 618
+<< ndiff >>
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 132 173 134
+rect 1027 134 1085 146
+rect 1027 132 1039 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 102 561 132
+rect 303 68 367 102
+rect 401 68 561 102
+rect 303 48 561 68
+rect 591 48 849 132
+rect 879 100 1039 132
+rect 1073 132 1085 134
+rect 1073 100 1137 132
+rect 879 48 1137 100
+rect 1167 48 1425 132
+rect 1455 102 1613 132
+rect 1455 68 1519 102
+rect 1553 68 1613 102
+rect 1455 48 1613 68
+<< pdiff >>
+rect 115 485 273 618
+rect 115 451 127 485
+rect 161 451 273 485
+rect 115 450 273 451
+rect 303 598 561 618
+rect 303 564 367 598
+rect 401 564 561 598
+rect 303 450 561 564
+rect 591 450 849 618
+rect 879 485 1137 618
+rect 879 451 1039 485
+rect 1073 451 1137 485
+rect 879 450 1137 451
+rect 1167 450 1425 618
+rect 1455 598 1613 618
+rect 1455 564 1519 598
+rect 1553 564 1613 598
+rect 1455 450 1613 564
+rect 115 439 173 450
+rect 1027 439 1085 450
+<< ndiffc >>
+rect 127 100 161 134
+rect 367 68 401 102
+rect 1039 100 1073 134
+rect 1519 68 1553 102
+<< pdiffc >>
+rect 127 451 161 485
+rect 367 564 401 598
+rect 1039 451 1073 485
+rect 1519 564 1553 598
+<< poly >>
+rect 273 618 303 644
+rect 561 618 591 644
+rect 849 618 879 644
+rect 1137 618 1167 644
+rect 1425 618 1455 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 849 418 879 450
+rect 1137 418 1167 450
+rect 1425 418 1455 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 1119 402 1185 418
+rect 1119 368 1135 402
+rect 1169 368 1185 402
+rect 1119 352 1185 368
+rect 1407 402 1473 418
+rect 1407 368 1423 402
+rect 1457 368 1473 402
+rect 1407 352 1473 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 1119 215 1185 231
+rect 1119 181 1135 215
+rect 1169 181 1185 215
+rect 1119 165 1185 181
+rect 1407 215 1473 231
+rect 1407 181 1423 215
+rect 1457 181 1473 215
+rect 1407 165 1473 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 849 132 879 165
+rect 1137 132 1167 165
+rect 1425 132 1455 165
+rect 273 22 303 48
+rect 561 22 591 48
+rect 849 22 879 48
+rect 1137 22 1167 48
+rect 1425 22 1455 48
+<< polycont >>
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 1135 368 1169 402
+rect 1423 368 1457 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+rect 1135 181 1169 215
+rect 1423 181 1457 215
+<< locali >>
+rect 0 683 1728 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1183 683
+rect 1217 649 1279 683
+rect 1313 649 1375 683
+rect 1409 649 1471 683
+rect 1505 649 1567 683
+rect 1601 649 1663 683
+rect 1697 649 1728 683
+rect 0 618 1728 649
+rect 351 598 417 618
+rect 351 564 367 598
+rect 401 564 417 598
+rect 351 548 417 564
+rect 1503 598 1569 618
+rect 1503 564 1519 598
+rect 1553 564 1569 598
+rect 1503 548 1569 564
+rect 111 485 177 501
+rect 1023 485 1089 501
+rect 111 451 127 485
+rect 161 451 177 485
+rect 111 435 177 451
+rect 271 418 305 451
+rect 1023 451 1039 485
+rect 1073 451 1089 485
+rect 1023 435 1089 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 1123 402 1185 418
+rect 1123 401 1135 402
+rect 831 352 897 368
+rect 1119 368 1135 401
+rect 1169 368 1185 402
+rect 1119 352 1185 368
+rect 1407 402 1473 418
+rect 1407 368 1423 402
+rect 1457 368 1473 402
+rect 1407 352 1473 368
+rect 271 323 305 352
+rect 559 296 593 352
+rect 559 231 593 262
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 831 215 897 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 689 181 847 215
+rect 881 181 897 215
+rect 1119 215 1185 231
+rect 1119 184 1135 215
+rect 543 165 609 181
+rect 831 165 897 181
+rect 1123 181 1135 184
+rect 1169 181 1185 215
+rect 1123 165 1185 181
+rect 1407 215 1473 231
+rect 1407 181 1423 215
+rect 1457 181 1473 215
+rect 1407 165 1473 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 1023 134 1089 150
+rect 111 84 177 100
+rect 351 102 417 118
+rect 351 68 367 102
+rect 401 68 417 102
+rect 1023 100 1039 134
+rect 1073 100 1089 134
+rect 1023 84 1089 100
+rect 1503 102 1569 118
+rect 351 48 417 68
+rect 1503 68 1519 102
+rect 1553 68 1569 102
+rect 1503 48 1569 68
+rect 0 17 1728 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1183 17
+rect 1217 -17 1279 17
+rect 1313 -17 1375 17
+rect 1409 -17 1471 17
+rect 1505 -17 1567 17
+rect 1601 -17 1663 17
+rect 1697 -17 1728 17
+rect 0 -48 1728 -17
+<< viali >>
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 895 649 929 683
+rect 991 649 1025 683
+rect 1087 649 1121 683
+rect 1183 649 1217 683
+rect 1279 649 1313 683
+rect 1375 649 1409 683
+rect 1471 649 1505 683
+rect 1567 649 1601 683
+rect 1663 649 1697 683
+rect 367 564 401 598
+rect 1519 564 1553 598
+rect 127 451 161 485
+rect 271 451 305 485
+rect 1039 451 1073 485
+rect 847 368 881 402
+rect 1135 368 1169 402
+rect 1423 368 1457 402
+rect 271 289 305 323
+rect 559 262 593 296
+rect 271 181 305 215
+rect 655 181 689 215
+rect 1135 181 1169 215
+rect 1423 181 1457 215
+rect 127 100 161 134
+rect 367 68 401 102
+rect 1039 100 1073 134
+rect 1519 68 1553 102
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
+rect 895 -17 929 17
+rect 991 -17 1025 17
+rect 1087 -17 1121 17
+rect 1183 -17 1217 17
+rect 1279 -17 1313 17
+rect 1375 -17 1409 17
+rect 1471 -17 1505 17
+rect 1567 -17 1601 17
+rect 1663 -17 1697 17
+<< metal1 >>
+rect 0 683 1728 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1183 683
+rect 1217 649 1279 683
+rect 1313 649 1375 683
+rect 1409 649 1471 683
+rect 1505 649 1567 683
+rect 1601 649 1663 683
+rect 1697 649 1728 683
+rect 0 618 1728 649
+rect 355 598 413 618
+rect 355 564 367 598
+rect 401 564 413 598
+rect 355 552 413 564
+rect 1507 598 1565 618
+rect 1507 564 1519 598
+rect 1553 564 1565 598
+rect 1507 552 1565 564
+rect 115 485 173 497
+rect 115 451 127 485
+rect 161 451 173 485
+rect 115 439 173 451
+rect 259 485 317 497
+rect 259 451 271 485
+rect 305 482 317 485
+rect 1027 485 1085 497
+rect 305 454 974 482
+rect 305 451 317 454
+rect 259 439 317 451
+rect 130 399 158 439
+rect 835 402 893 414
+rect 835 399 847 402
+rect 130 371 847 399
+rect 130 146 158 371
+rect 835 368 847 371
+rect 881 368 893 402
+rect 946 399 974 454
+rect 1027 451 1039 485
+rect 1073 482 1085 485
+rect 1073 454 1262 482
+rect 1073 451 1085 454
+rect 1027 439 1085 451
+rect 1123 402 1181 414
+rect 1123 399 1135 402
+rect 946 371 1135 399
+rect 835 356 893 368
+rect 1123 368 1135 371
+rect 1169 368 1181 402
+rect 1123 356 1181 368
+rect 259 323 317 335
+rect 259 289 271 323
+rect 305 289 317 323
+rect 259 277 317 289
+rect 547 296 605 308
+rect 274 227 302 277
+rect 547 262 559 296
+rect 593 262 605 296
+rect 547 250 605 262
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 212 317 215
+rect 643 215 701 227
+rect 643 212 655 215
+rect 305 184 655 212
+rect 305 181 317 184
+rect 259 169 317 181
+rect 643 181 655 184
+rect 689 181 701 215
+rect 850 212 878 356
+rect 1123 215 1181 227
+rect 1123 212 1135 215
+rect 850 184 1135 212
+rect 643 169 701 181
+rect 1123 181 1135 184
+rect 1169 181 1181 215
+rect 1123 169 1181 181
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 1027 134 1085 146
+rect 115 88 173 100
+rect 355 102 413 114
+rect 355 68 367 102
+rect 401 68 413 102
+rect 1027 100 1039 134
+rect 1073 131 1085 134
+rect 1234 131 1262 454
+rect 1411 402 1469 414
+rect 1411 368 1423 402
+rect 1457 368 1469 402
+rect 1411 356 1469 368
+rect 1426 227 1454 356
+rect 1411 215 1469 227
+rect 1411 181 1423 215
+rect 1457 181 1469 215
+rect 1411 169 1469 181
+rect 1073 103 1262 131
+rect 1073 100 1085 103
+rect 1027 88 1085 100
+rect 1507 102 1565 114
+rect 355 48 413 68
+rect 1507 68 1519 102
+rect 1553 68 1565 102
+rect 1507 48 1565 68
+rect 0 17 1728 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1183 17
+rect 1217 -17 1279 17
+rect 1313 -17 1375 17
+rect 1409 -17 1471 17
+rect 1505 -17 1567 17
+rect 1601 -17 1663 17
+rect 1697 -17 1728 17
+rect 0 -48 1728 -17
+<< labels >>
+rlabel locali 0 618 1728 714 0 VDD
+port 1 se
+rlabel metal1 0 618 1728 714 0 VDD
+port 2 se
+rlabel locali 0 -48 1728 48 0 GND
+port 3 se
+rlabel metal1 0 -48 1728 48 0 GND
+port 4 se
+rlabel metal1 1027 88 1085 103 0 Y
+port 5 se
+rlabel metal1 1027 103 1262 131 0 Y
+port 6 se
+rlabel metal1 1027 131 1085 146 0 Y
+port 7 se
+rlabel metal1 1027 439 1085 454 0 Y
+port 8 se
+rlabel metal1 1234 131 1262 454 0 Y
+port 9 se
+rlabel metal1 1027 454 1262 482 0 Y
+port 10 se
+rlabel metal1 1027 482 1085 497 0 Y
+port 11 se
+rlabel metal1 259 169 317 184 0 S
+port 12 se
+rlabel metal1 643 169 701 184 0 S
+port 13 se
+rlabel metal1 259 184 701 212 0 S
+port 14 se
+rlabel metal1 259 212 317 227 0 S
+port 15 se
+rlabel metal1 643 212 701 227 0 S
+port 16 se
+rlabel metal1 274 227 302 277 0 S
+port 17 se
+rlabel metal1 259 277 317 335 0 S
+port 18 se
+rlabel metal1 547 250 605 308 0 A
+port 19 se
+rlabel metal1 1411 169 1469 227 0 B
+port 20 se
+rlabel metal1 1426 227 1454 356 0 B
+port 21 se
+rlabel metal1 1411 356 1469 414 0 B
+port 22 se
+<< properties >>
+string FIXED_BBOX 0 0 1728 666
+<< end >>
diff --git a/cells/mag/NAND2X1.mag b/cells/mag/NAND2X1.mag
index 3e9e38c..9049dc8 100644
--- a/cells/mag/NAND2X1.mag
+++ b/cells/mag/NAND2X1.mag
@@ -1,268 +1,278 @@
 magic
 tech sky130A
-timestamp 1624703275
+magscale 1 2
+timestamp 1624887588
+<< checkpaint >>
+rect -1260 -1374 11260 2038
 << nwell >>
-rect 0 179 432 333
+rect 0 358 864 666
 << nmos >>
-rect 137 24 152 66
-rect 281 24 296 66
+rect 273 48 303 132
+rect 561 48 591 132
 << pmos >>
-rect 137 225 152 309
-rect 281 225 296 309
+rect 273 450 303 618
+rect 561 450 591 618
 << ndiff >>
-rect 58 67 87 73
-rect 58 50 64 67
-rect 81 66 87 67
-rect 81 50 137 66
-rect 58 24 137 50
-rect 152 24 281 66
-rect 296 51 375 66
-rect 296 34 328 51
-rect 345 34 375 51
-rect 296 24 375 34
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 132 173 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 48 561 132
+rect 591 102 749 132
+rect 591 68 655 102
+rect 689 68 749 102
+rect 591 48 749 68
 << pdiff >>
-rect 58 243 137 309
-rect 58 226 64 243
-rect 81 226 137 243
-rect 58 225 137 226
-rect 152 299 281 309
-rect 152 282 184 299
-rect 201 282 281 299
-rect 152 225 281 282
-rect 296 243 375 309
-rect 296 226 328 243
-rect 345 226 375 243
-rect 296 225 375 226
-rect 58 220 87 225
-rect 322 220 351 225
+rect 115 485 273 618
+rect 115 451 127 485
+rect 161 451 273 485
+rect 115 450 273 451
+rect 303 598 561 618
+rect 303 564 367 598
+rect 401 564 561 598
+rect 303 450 561 564
+rect 591 485 749 618
+rect 591 451 655 485
+rect 689 451 749 485
+rect 591 450 749 451
+rect 115 439 173 450
+rect 643 439 701 450
 << ndiffc >>
-rect 64 50 81 67
-rect 328 34 345 51
+rect 127 100 161 134
+rect 655 68 689 102
 << pdiffc >>
-rect 64 226 81 243
-rect 184 282 201 299
-rect 328 226 345 243
+rect 127 451 161 485
+rect 367 564 401 598
+rect 655 451 689 485
 << poly >>
-rect 137 309 152 322
-rect 281 309 296 322
-rect 137 209 152 225
-rect 281 209 296 225
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 91 305 108
-rect 272 83 305 91
-rect 137 66 152 83
-rect 281 66 296 83
-rect 137 11 152 24
-rect 281 11 296 24
+rect 273 618 303 644
+rect 561 618 591 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 273 22 303 48
+rect 561 22 591 48
 << polycont >>
-rect 136 184 153 201
-rect 280 184 297 201
-rect 136 91 153 108
-rect 280 91 297 108
+rect 271 368 305 402
+rect 559 368 593 402
+rect 271 181 305 215
+rect 559 181 593 215
 << locali >>
-rect 0 342 432 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 432 342
-rect 0 309 432 325
-rect 176 299 209 309
-rect 176 282 184 299
-rect 201 282 209 299
-rect 176 274 209 282
-rect 56 243 89 251
-rect 56 226 64 243
-rect 81 226 89 243
-rect 56 218 89 226
-rect 320 243 353 251
-rect 320 226 328 243
-rect 345 226 353 243
-rect 320 218 353 226
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 303 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 91 305 108
-rect 272 83 305 91
-rect 56 67 89 75
-rect 56 50 64 67
-rect 81 50 89 67
-rect 56 42 89 50
-rect 320 51 353 59
-rect 320 34 328 51
-rect 345 34 353 51
-rect 320 24 353 34
-rect 0 9 432 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 432 9
-rect 0 -24 432 -9
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 864 683
+rect 31 618 833 649
+rect 351 598 417 618
+rect 351 564 367 598
+rect 401 564 417 598
+rect 351 548 417 564
+rect 111 485 177 501
+rect 111 451 127 485
+rect 161 451 177 485
+rect 111 435 177 451
+rect 639 485 705 501
+rect 639 451 655 485
+rect 689 451 705 485
+rect 639 435 705 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 605 418
+rect 543 368 559 402
+rect 593 401 605 402
+rect 593 368 609 401
+rect 543 352 609 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 111 84 177 100
+rect 639 102 705 118
+rect 639 68 655 102
+rect 689 68 705 102
+rect 639 48 705 68
+rect 31 17 833 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 864 17
 << viali >>
-rect 16 325 33 342
-rect 64 325 81 342
-rect 112 325 129 342
-rect 160 325 177 342
-rect 208 325 225 342
-rect 256 325 273 342
-rect 304 325 321 342
-rect 352 325 369 342
-rect 400 325 417 342
-rect 184 282 201 299
-rect 64 226 81 243
-rect 328 226 345 243
-rect 136 184 153 201
-rect 280 184 297 201
-rect 136 91 153 108
-rect 280 91 297 108
-rect 64 50 81 67
-rect 328 34 345 51
-rect 16 -9 33 9
-rect 64 -9 81 9
-rect 112 -9 129 9
-rect 160 -9 177 9
-rect 208 -9 225 9
-rect 256 -9 273 9
-rect 304 -9 321 9
-rect 352 -9 369 9
-rect 400 -9 417 9
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 367 564 401 598
+rect 127 451 161 485
+rect 655 451 689 485
+rect 271 368 305 402
+rect 559 368 593 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 127 100 161 134
+rect 655 68 689 102
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
 << metal1 >>
-rect 0 342 432 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 432 342
-rect 0 309 432 325
-rect 178 299 207 309
-rect 178 282 184 299
-rect 201 282 207 299
-rect 178 276 207 282
-rect 58 243 87 249
-rect 58 226 64 243
-rect 81 241 87 243
-rect 322 243 351 249
-rect 322 241 328 243
-rect 81 227 328 241
-rect 81 226 87 227
-rect 58 220 87 226
-rect 322 226 328 227
-rect 345 226 351 243
-rect 322 220 351 226
-rect 65 73 79 220
-rect 130 201 159 207
-rect 130 184 136 201
-rect 153 184 159 201
-rect 130 178 159 184
-rect 274 201 303 207
-rect 274 184 280 201
-rect 297 184 303 201
-rect 274 178 303 184
-rect 137 114 151 178
-rect 281 114 295 178
-rect 130 108 159 114
-rect 130 91 136 108
-rect 153 91 159 108
-rect 130 85 159 91
-rect 274 108 303 114
-rect 274 91 280 108
-rect 297 91 303 108
-rect 274 85 303 91
-rect 58 67 87 73
-rect 58 50 64 67
-rect 81 50 87 67
-rect 58 44 87 50
-rect 322 51 351 57
-rect 322 34 328 51
-rect 345 34 351 51
-rect 322 24 351 34
-rect 0 9 432 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 432 9
-rect 0 -24 432 -9
+rect 0 683 864 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 864 683
+rect 0 618 864 649
+rect 355 598 413 618
+rect 355 564 367 598
+rect 401 564 413 598
+rect 355 552 413 564
+rect 115 485 173 497
+rect 115 451 127 485
+rect 161 482 173 485
+rect 643 485 701 497
+rect 643 482 655 485
+rect 161 454 655 482
+rect 161 451 173 454
+rect 115 439 173 451
+rect 643 451 655 454
+rect 689 451 701 485
+rect 643 439 701 451
+rect 130 146 158 439
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 368 317 402
+rect 259 356 317 368
+rect 547 402 605 414
+rect 547 368 559 402
+rect 593 368 605 402
+rect 547 356 605 368
+rect 274 227 302 356
+rect 562 227 590 356
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 181 317 215
+rect 259 169 317 181
+rect 547 215 605 227
+rect 547 181 559 215
+rect 593 181 605 215
+rect 547 169 605 181
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 115 88 173 100
+rect 643 102 701 114
+rect 643 68 655 102
+rect 689 68 701 102
+rect 643 48 701 68
+rect 0 17 864 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 864 17
+rect 0 -48 864 -17
 << labels >>
-rlabel locali 0 309 432 357 0 VDD
+rlabel metal1 0 618 864 714 0 VDD
 port 1 se
-rlabel metal1 0 309 432 357 0 VDD
+rlabel metal1 0 618 864 714 0 VDD
 port 2 se
-rlabel locali 0 -24 432 24 0 GND
+rlabel metal1 0 -48 864 48 0 GND
 port 3 se
-rlabel metal1 0 -24 432 24 0 GND
+rlabel metal1 0 -48 864 48 0 GND
 port 4 se
-rlabel metal1 58 44 87 73 0 Y
+rlabel metal1 115 88 173 146 0 Y
 port 5 se
-rlabel metal1 65 73 79 220 0 Y
+rlabel metal1 130 146 158 439 0 Y
 port 6 se
-rlabel metal1 58 220 87 227 0 Y
+rlabel metal1 115 439 173 454 0 Y
 port 7 se
-rlabel metal1 322 220 351 227 0 Y
+rlabel metal1 643 439 701 454 0 Y
 port 8 se
-rlabel metal1 58 227 351 241 0 Y
+rlabel metal1 115 454 701 482 0 Y
 port 9 se
-rlabel metal1 58 241 87 249 0 Y
+rlabel metal1 115 482 173 497 0 Y
 port 10 se
-rlabel metal1 322 241 351 249 0 Y
+rlabel metal1 643 482 701 497 0 Y
 port 11 se
-rlabel metal1 274 85 303 114 0 A
+rlabel metal1 259 169 317 227 0 B
 port 12 se
-rlabel metal1 281 114 295 178 0 A
+rlabel metal1 274 227 302 356 0 B
 port 13 se
-rlabel metal1 274 178 303 207 0 A
+rlabel metal1 259 356 317 414 0 B
 port 14 se
-rlabel metal1 130 85 159 114 0 B
+rlabel metal1 547 169 605 227 0 A
 port 15 se
-rlabel metal1 137 114 151 178 0 B
+rlabel metal1 562 227 590 356 0 A
 port 16 se
-rlabel metal1 130 178 159 207 0 B
+rlabel metal1 547 356 605 414 0 A
 port 17 se
+rlabel locali 0 -17 864 17 4 GND
+port 3 se
+rlabel locali 31 17 833 48 4 GND
+port 3 se
+rlabel locali 0 649 864 683 4 VDD
+port 1 se
+rlabel locali 31 618 833 649 4 VDD
+port 1 se
 << properties >>
-string FIXED_BBOX 0 0 432 333
+string FIXED_BBOX 0 0 864 666
 << end >>
diff --git a/cells/mag/NAND2X1.mag.beforemagic b/cells/mag/NAND2X1.mag.beforemagic
new file mode 100644
index 0000000..21f7972
--- /dev/null
+++ b/cells/mag/NAND2X1.mag.beforemagic
@@ -0,0 +1,270 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1624753481
+<< nwell >>
+rect 0 358 864 666
+<< nmos >>
+rect 273 48 303 132
+rect 561 48 591 132
+<< pmos >>
+rect 273 450 303 618
+rect 561 450 591 618
+<< ndiff >>
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 132 173 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 48 561 132
+rect 591 102 749 132
+rect 591 68 655 102
+rect 689 68 749 102
+rect 591 48 749 68
+<< pdiff >>
+rect 115 485 273 618
+rect 115 451 127 485
+rect 161 451 273 485
+rect 115 450 273 451
+rect 303 598 561 618
+rect 303 564 367 598
+rect 401 564 561 598
+rect 303 450 561 564
+rect 591 485 749 618
+rect 591 451 655 485
+rect 689 451 749 485
+rect 591 450 749 451
+rect 115 439 173 450
+rect 643 439 701 450
+<< ndiffc >>
+rect 127 100 161 134
+rect 655 68 689 102
+<< pdiffc >>
+rect 127 451 161 485
+rect 367 564 401 598
+rect 655 451 689 485
+<< poly >>
+rect 273 618 303 644
+rect 561 618 591 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 273 22 303 48
+rect 561 22 591 48
+<< polycont >>
+rect 271 368 305 402
+rect 559 368 593 402
+rect 271 181 305 215
+rect 559 181 593 215
+<< locali >>
+rect 0 683 864 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 864 683
+rect 0 618 864 649
+rect 351 598 417 618
+rect 351 564 367 598
+rect 401 564 417 598
+rect 351 548 417 564
+rect 111 485 177 501
+rect 111 451 127 485
+rect 161 451 177 485
+rect 111 435 177 451
+rect 639 485 705 501
+rect 639 451 655 485
+rect 689 451 705 485
+rect 639 435 705 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 605 418
+rect 543 368 559 402
+rect 593 401 605 402
+rect 593 368 609 401
+rect 543 352 609 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 111 84 177 100
+rect 639 102 705 118
+rect 639 68 655 102
+rect 689 68 705 102
+rect 639 48 705 68
+rect 0 17 864 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 864 17
+rect 0 -48 864 -17
+<< viali >>
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 367 564 401 598
+rect 127 451 161 485
+rect 655 451 689 485
+rect 271 368 305 402
+rect 559 368 593 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 127 100 161 134
+rect 655 68 689 102
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
+<< metal1 >>
+rect 0 683 864 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 864 683
+rect 0 618 864 649
+rect 355 598 413 618
+rect 355 564 367 598
+rect 401 564 413 598
+rect 355 552 413 564
+rect 115 485 173 497
+rect 115 451 127 485
+rect 161 482 173 485
+rect 643 485 701 497
+rect 643 482 655 485
+rect 161 454 655 482
+rect 161 451 173 454
+rect 115 439 173 451
+rect 643 451 655 454
+rect 689 451 701 485
+rect 643 439 701 451
+rect 130 146 158 439
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 368 317 402
+rect 259 356 317 368
+rect 547 402 605 414
+rect 547 368 559 402
+rect 593 368 605 402
+rect 547 356 605 368
+rect 274 227 302 356
+rect 562 227 590 356
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 181 317 215
+rect 259 169 317 181
+rect 547 215 605 227
+rect 547 181 559 215
+rect 593 181 605 215
+rect 547 169 605 181
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 115 88 173 100
+rect 643 102 701 114
+rect 643 68 655 102
+rect 689 68 701 102
+rect 643 48 701 68
+rect 0 17 864 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 864 17
+rect 0 -48 864 -17
+<< labels >>
+rlabel locali 0 618 864 714 0 VDD
+port 1 se
+rlabel metal1 0 618 864 714 0 VDD
+port 2 se
+rlabel locali 0 -48 864 48 0 GND
+port 3 se
+rlabel metal1 0 -48 864 48 0 GND
+port 4 se
+rlabel metal1 115 88 173 146 0 Y
+port 5 se
+rlabel metal1 130 146 158 439 0 Y
+port 6 se
+rlabel metal1 115 439 173 454 0 Y
+port 7 se
+rlabel metal1 643 439 701 454 0 Y
+port 8 se
+rlabel metal1 115 454 701 482 0 Y
+port 9 se
+rlabel metal1 115 482 173 497 0 Y
+port 10 se
+rlabel metal1 643 482 701 497 0 Y
+port 11 se
+rlabel metal1 259 169 317 227 0 B
+port 12 se
+rlabel metal1 274 227 302 356 0 B
+port 13 se
+rlabel metal1 259 356 317 414 0 B
+port 14 se
+rlabel metal1 547 169 605 227 0 A
+port 15 se
+rlabel metal1 562 227 590 356 0 A
+port 16 se
+rlabel metal1 547 356 605 414 0 A
+port 17 se
+<< properties >>
+string FIXED_BBOX 0 0 864 666
+<< end >>
diff --git a/cells/mag/NAND3X1.mag b/cells/mag/NAND3X1.mag
index 9a86b62..fa25d27 100644
--- a/cells/mag/NAND3X1.mag
+++ b/cells/mag/NAND3X1.mag
@@ -1,342 +1,352 @@
 magic
 tech sky130A
-timestamp 1624703321
+magscale 1 2
+timestamp 1624887589
+<< checkpaint >>
+rect -1260 -1374 11260 2038
 << nwell >>
-rect 0 179 576 333
+rect 0 358 1152 666
 << nmos >>
-rect 137 24 152 66
-rect 281 24 296 66
-rect 425 24 440 66
+rect 273 48 303 132
+rect 561 48 591 132
+rect 849 48 879 132
 << pmos >>
-rect 137 225 152 309
-rect 281 225 296 309
-rect 425 225 440 309
+rect 273 450 303 618
+rect 561 450 591 618
+rect 849 450 879 618
 << ndiff >>
-rect 58 67 87 73
-rect 58 50 64 67
-rect 81 66 87 67
-rect 81 50 137 66
-rect 58 24 137 50
-rect 152 24 281 66
-rect 296 24 425 66
-rect 440 51 519 66
-rect 440 34 472 51
-rect 489 34 519 51
-rect 440 24 519 34
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 132 173 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 48 561 132
+rect 591 48 849 132
+rect 879 102 1037 132
+rect 879 68 943 102
+rect 977 68 1037 102
+rect 879 48 1037 68
 << pdiff >>
-rect 58 243 137 309
-rect 58 226 64 243
-rect 81 226 137 243
-rect 58 225 137 226
-rect 152 299 281 309
-rect 152 282 184 299
-rect 201 282 281 299
-rect 152 225 281 282
-rect 296 243 425 309
-rect 296 226 328 243
-rect 345 226 425 243
-rect 296 225 425 226
-rect 440 299 519 309
-rect 440 282 472 299
-rect 489 282 519 299
-rect 440 225 519 282
-rect 58 220 87 225
-rect 322 220 351 225
+rect 115 485 273 618
+rect 115 451 127 485
+rect 161 451 273 485
+rect 115 450 273 451
+rect 303 598 561 618
+rect 303 564 367 598
+rect 401 564 561 598
+rect 303 450 561 564
+rect 591 485 849 618
+rect 591 451 655 485
+rect 689 451 849 485
+rect 591 450 849 451
+rect 879 598 1037 618
+rect 879 564 943 598
+rect 977 564 1037 598
+rect 879 450 1037 564
+rect 115 439 173 450
+rect 643 439 701 450
 << ndiffc >>
-rect 64 50 81 67
-rect 472 34 489 51
+rect 127 100 161 134
+rect 943 68 977 102
 << pdiffc >>
-rect 64 226 81 243
-rect 184 282 201 299
-rect 328 226 345 243
-rect 472 282 489 299
+rect 127 451 161 485
+rect 367 564 401 598
+rect 655 451 689 485
+rect 943 564 977 598
 << poly >>
-rect 137 309 152 322
-rect 281 309 296 322
-rect 425 309 440 322
-rect 137 209 152 225
-rect 281 209 296 225
-rect 425 209 440 225
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 416 201 449 209
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 91 305 108
-rect 272 83 305 91
-rect 416 108 449 116
-rect 416 91 424 108
-rect 441 91 449 108
-rect 416 83 449 91
-rect 137 66 152 83
-rect 281 66 296 83
-rect 425 66 440 83
-rect 137 11 152 24
-rect 281 11 296 24
-rect 425 11 440 24
+rect 273 618 303 644
+rect 561 618 591 644
+rect 849 618 879 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 849 418 879 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 849 132 879 165
+rect 273 22 303 48
+rect 561 22 591 48
+rect 849 22 879 48
 << polycont >>
-rect 136 184 153 201
-rect 280 184 297 201
-rect 424 184 441 201
-rect 136 91 153 108
-rect 280 91 297 108
-rect 424 91 441 108
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
 << locali >>
-rect 0 342 576 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 448 342
-rect 465 325 496 342
-rect 513 325 544 342
-rect 561 325 576 342
-rect 0 309 576 325
-rect 176 299 209 309
-rect 176 282 184 299
-rect 201 282 209 299
-rect 176 274 209 282
-rect 464 299 497 309
-rect 464 282 472 299
-rect 489 282 497 299
-rect 464 274 497 282
-rect 56 243 89 251
-rect 56 226 64 243
-rect 81 226 89 243
-rect 56 218 89 226
-rect 320 243 353 251
-rect 320 226 328 243
-rect 345 226 353 243
-rect 320 218 353 226
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 303 209
-rect 416 201 449 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 91 305 108
-rect 272 83 305 91
-rect 416 108 449 116
-rect 416 91 424 108
-rect 441 91 449 108
-rect 416 83 449 91
-rect 56 67 89 75
-rect 56 50 64 67
-rect 81 50 89 67
-rect 56 42 89 50
-rect 464 51 497 59
-rect 464 34 472 51
-rect 489 34 497 51
-rect 464 24 497 34
-rect 0 9 576 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 448 9
-rect 465 -9 496 9
-rect 513 -9 544 9
-rect 561 -9 576 9
-rect 0 -24 576 -9
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1152 683
+rect 31 618 1121 649
+rect 351 598 417 618
+rect 351 564 367 598
+rect 401 564 417 598
+rect 351 548 417 564
+rect 927 598 993 618
+rect 927 564 943 598
+rect 977 564 993 598
+rect 927 548 993 564
+rect 111 485 177 501
+rect 111 451 127 485
+rect 161 451 177 485
+rect 111 435 177 451
+rect 639 485 705 501
+rect 639 451 655 485
+rect 689 451 705 485
+rect 639 435 705 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 605 418
+rect 543 368 559 402
+rect 593 401 605 402
+rect 831 402 897 418
+rect 593 368 609 401
+rect 543 352 609 368
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 111 84 177 100
+rect 927 102 993 118
+rect 927 68 943 102
+rect 977 68 993 102
+rect 927 48 993 68
+rect 31 17 1121 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1152 17
 << viali >>
-rect 16 325 33 342
-rect 64 325 81 342
-rect 112 325 129 342
-rect 160 325 177 342
-rect 208 325 225 342
-rect 256 325 273 342
-rect 304 325 321 342
-rect 352 325 369 342
-rect 400 325 417 342
-rect 448 325 465 342
-rect 496 325 513 342
-rect 544 325 561 342
-rect 184 282 201 299
-rect 472 282 489 299
-rect 64 226 81 243
-rect 328 226 345 243
-rect 136 184 153 201
-rect 280 184 297 201
-rect 424 184 441 201
-rect 136 91 153 108
-rect 280 91 297 108
-rect 424 91 441 108
-rect 64 50 81 67
-rect 472 34 489 51
-rect 16 -9 33 9
-rect 64 -9 81 9
-rect 112 -9 129 9
-rect 160 -9 177 9
-rect 208 -9 225 9
-rect 256 -9 273 9
-rect 304 -9 321 9
-rect 352 -9 369 9
-rect 400 -9 417 9
-rect 448 -9 465 9
-rect 496 -9 513 9
-rect 544 -9 561 9
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 895 649 929 683
+rect 991 649 1025 683
+rect 1087 649 1121 683
+rect 367 564 401 598
+rect 943 564 977 598
+rect 127 451 161 485
+rect 655 451 689 485
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+rect 127 100 161 134
+rect 943 68 977 102
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
+rect 895 -17 929 17
+rect 991 -17 1025 17
+rect 1087 -17 1121 17
 << metal1 >>
-rect 0 342 576 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 448 342
-rect 465 325 496 342
-rect 513 325 544 342
-rect 561 325 576 342
-rect 0 309 576 325
-rect 178 299 207 309
-rect 178 282 184 299
-rect 201 282 207 299
-rect 178 276 207 282
-rect 466 299 495 309
-rect 466 282 472 299
-rect 489 282 495 299
-rect 466 276 495 282
-rect 58 243 87 249
-rect 58 226 64 243
-rect 81 241 87 243
-rect 322 243 351 249
-rect 322 241 328 243
-rect 81 227 328 241
-rect 81 226 87 227
-rect 58 220 87 226
-rect 322 226 328 227
-rect 345 226 351 243
-rect 322 220 351 226
-rect 65 73 79 220
-rect 130 201 159 207
-rect 130 184 136 201
-rect 153 184 159 201
-rect 130 178 159 184
-rect 274 201 303 207
-rect 274 184 280 201
-rect 297 184 303 201
-rect 274 178 303 184
-rect 418 201 447 207
-rect 418 184 424 201
-rect 441 184 447 201
-rect 418 178 447 184
-rect 137 114 151 178
-rect 281 114 295 178
-rect 425 114 439 178
-rect 130 108 159 114
-rect 130 91 136 108
-rect 153 91 159 108
-rect 130 85 159 91
-rect 274 108 303 114
-rect 274 91 280 108
-rect 297 91 303 108
-rect 274 85 303 91
-rect 418 108 447 114
-rect 418 91 424 108
-rect 441 91 447 108
-rect 418 85 447 91
-rect 58 67 87 73
-rect 58 50 64 67
-rect 81 50 87 67
-rect 58 44 87 50
-rect 466 51 495 57
-rect 466 34 472 51
-rect 489 34 495 51
-rect 466 24 495 34
-rect 0 9 576 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 448 9
-rect 465 -9 496 9
-rect 513 -9 544 9
-rect 561 -9 576 9
-rect 0 -24 576 -9
+rect 0 683 1152 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1152 683
+rect 0 618 1152 649
+rect 355 598 413 618
+rect 355 564 367 598
+rect 401 564 413 598
+rect 355 552 413 564
+rect 931 598 989 618
+rect 931 564 943 598
+rect 977 564 989 598
+rect 931 552 989 564
+rect 115 485 173 497
+rect 115 451 127 485
+rect 161 482 173 485
+rect 643 485 701 497
+rect 643 482 655 485
+rect 161 454 655 482
+rect 161 451 173 454
+rect 115 439 173 451
+rect 643 451 655 454
+rect 689 451 701 485
+rect 643 439 701 451
+rect 130 146 158 439
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 368 317 402
+rect 259 356 317 368
+rect 547 402 605 414
+rect 547 368 559 402
+rect 593 368 605 402
+rect 547 356 605 368
+rect 835 402 893 414
+rect 835 368 847 402
+rect 881 368 893 402
+rect 835 356 893 368
+rect 274 227 302 356
+rect 562 227 590 356
+rect 850 227 878 356
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 181 317 215
+rect 259 169 317 181
+rect 547 215 605 227
+rect 547 181 559 215
+rect 593 181 605 215
+rect 547 169 605 181
+rect 835 215 893 227
+rect 835 181 847 215
+rect 881 181 893 215
+rect 835 169 893 181
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 115 88 173 100
+rect 931 102 989 114
+rect 931 68 943 102
+rect 977 68 989 102
+rect 931 48 989 68
+rect 0 17 1152 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1152 17
+rect 0 -48 1152 -17
 << labels >>
-rlabel locali 0 309 576 357 0 VDD
+rlabel metal1 0 618 1152 714 0 VDD
 port 1 se
-rlabel metal1 0 309 576 357 0 VDD
+rlabel metal1 0 618 1152 714 0 VDD
 port 2 se
-rlabel locali 0 -24 576 24 0 GND
+rlabel metal1 0 -48 1152 48 0 GND
 port 3 se
-rlabel metal1 0 -24 576 24 0 GND
+rlabel metal1 0 -48 1152 48 0 GND
 port 4 se
-rlabel metal1 58 44 87 73 0 Y
+rlabel metal1 115 88 173 146 0 Y
 port 5 se
-rlabel metal1 65 73 79 220 0 Y
+rlabel metal1 130 146 158 439 0 Y
 port 6 se
-rlabel metal1 58 220 87 227 0 Y
+rlabel metal1 115 439 173 454 0 Y
 port 7 se
-rlabel metal1 322 220 351 227 0 Y
+rlabel metal1 643 439 701 454 0 Y
 port 8 se
-rlabel metal1 58 227 351 241 0 Y
+rlabel metal1 115 454 701 482 0 Y
 port 9 se
-rlabel metal1 58 241 87 249 0 Y
+rlabel metal1 115 482 173 497 0 Y
 port 10 se
-rlabel metal1 322 241 351 249 0 Y
+rlabel metal1 643 482 701 497 0 Y
 port 11 se
-rlabel metal1 130 85 159 114 0 C
+rlabel metal1 259 169 317 227 0 C
 port 12 se
-rlabel metal1 137 114 151 178 0 C
+rlabel metal1 274 227 302 356 0 C
 port 13 se
-rlabel metal1 130 178 159 207 0 C
+rlabel metal1 259 356 317 414 0 C
 port 14 se
-rlabel metal1 274 85 303 114 0 B
+rlabel metal1 547 169 605 227 0 B
 port 15 se
-rlabel metal1 281 114 295 178 0 B
+rlabel metal1 562 227 590 356 0 B
 port 16 se
-rlabel metal1 274 178 303 207 0 B
+rlabel metal1 547 356 605 414 0 B
 port 17 se
-rlabel metal1 418 85 447 114 0 A
+rlabel metal1 835 169 893 227 0 A
 port 18 se
-rlabel metal1 425 114 439 178 0 A
+rlabel metal1 850 227 878 356 0 A
 port 19 se
-rlabel metal1 418 178 447 207 0 A
+rlabel metal1 835 356 893 414 0 A
 port 20 se
+rlabel locali 0 -17 1152 17 4 GND
+port 3 se
+rlabel locali 31 17 1121 48 4 GND
+port 3 se
+rlabel locali 0 649 1152 683 4 VDD
+port 1 se
+rlabel locali 31 618 1121 649 4 VDD
+port 1 se
 << properties >>
-string FIXED_BBOX 0 0 576 333
+string FIXED_BBOX 0 0 1152 666
 << end >>
diff --git a/cells/mag/NAND3X1.mag.beforemagic b/cells/mag/NAND3X1.mag.beforemagic
new file mode 100644
index 0000000..6e5bf12
--- /dev/null
+++ b/cells/mag/NAND3X1.mag.beforemagic
@@ -0,0 +1,344 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1624753525
+<< nwell >>
+rect 0 358 1152 666
+<< nmos >>
+rect 273 48 303 132
+rect 561 48 591 132
+rect 849 48 879 132
+<< pmos >>
+rect 273 450 303 618
+rect 561 450 591 618
+rect 849 450 879 618
+<< ndiff >>
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 132 173 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 48 561 132
+rect 591 48 849 132
+rect 879 102 1037 132
+rect 879 68 943 102
+rect 977 68 1037 102
+rect 879 48 1037 68
+<< pdiff >>
+rect 115 485 273 618
+rect 115 451 127 485
+rect 161 451 273 485
+rect 115 450 273 451
+rect 303 598 561 618
+rect 303 564 367 598
+rect 401 564 561 598
+rect 303 450 561 564
+rect 591 485 849 618
+rect 591 451 655 485
+rect 689 451 849 485
+rect 591 450 849 451
+rect 879 598 1037 618
+rect 879 564 943 598
+rect 977 564 1037 598
+rect 879 450 1037 564
+rect 115 439 173 450
+rect 643 439 701 450
+<< ndiffc >>
+rect 127 100 161 134
+rect 943 68 977 102
+<< pdiffc >>
+rect 127 451 161 485
+rect 367 564 401 598
+rect 655 451 689 485
+rect 943 564 977 598
+<< poly >>
+rect 273 618 303 644
+rect 561 618 591 644
+rect 849 618 879 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 849 418 879 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 849 132 879 165
+rect 273 22 303 48
+rect 561 22 591 48
+rect 849 22 879 48
+<< polycont >>
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+<< locali >>
+rect 0 683 1152 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1152 683
+rect 0 618 1152 649
+rect 351 598 417 618
+rect 351 564 367 598
+rect 401 564 417 598
+rect 351 548 417 564
+rect 927 598 993 618
+rect 927 564 943 598
+rect 977 564 993 598
+rect 927 548 993 564
+rect 111 485 177 501
+rect 111 451 127 485
+rect 161 451 177 485
+rect 111 435 177 451
+rect 639 485 705 501
+rect 639 451 655 485
+rect 689 451 705 485
+rect 639 435 705 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 605 418
+rect 543 368 559 402
+rect 593 401 605 402
+rect 831 402 897 418
+rect 593 368 609 401
+rect 543 352 609 368
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 111 84 177 100
+rect 927 102 993 118
+rect 927 68 943 102
+rect 977 68 993 102
+rect 927 48 993 68
+rect 0 17 1152 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1152 17
+rect 0 -48 1152 -17
+<< viali >>
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 895 649 929 683
+rect 991 649 1025 683
+rect 1087 649 1121 683
+rect 367 564 401 598
+rect 943 564 977 598
+rect 127 451 161 485
+rect 655 451 689 485
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+rect 127 100 161 134
+rect 943 68 977 102
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
+rect 895 -17 929 17
+rect 991 -17 1025 17
+rect 1087 -17 1121 17
+<< metal1 >>
+rect 0 683 1152 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1152 683
+rect 0 618 1152 649
+rect 355 598 413 618
+rect 355 564 367 598
+rect 401 564 413 598
+rect 355 552 413 564
+rect 931 598 989 618
+rect 931 564 943 598
+rect 977 564 989 598
+rect 931 552 989 564
+rect 115 485 173 497
+rect 115 451 127 485
+rect 161 482 173 485
+rect 643 485 701 497
+rect 643 482 655 485
+rect 161 454 655 482
+rect 161 451 173 454
+rect 115 439 173 451
+rect 643 451 655 454
+rect 689 451 701 485
+rect 643 439 701 451
+rect 130 146 158 439
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 368 317 402
+rect 259 356 317 368
+rect 547 402 605 414
+rect 547 368 559 402
+rect 593 368 605 402
+rect 547 356 605 368
+rect 835 402 893 414
+rect 835 368 847 402
+rect 881 368 893 402
+rect 835 356 893 368
+rect 274 227 302 356
+rect 562 227 590 356
+rect 850 227 878 356
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 181 317 215
+rect 259 169 317 181
+rect 547 215 605 227
+rect 547 181 559 215
+rect 593 181 605 215
+rect 547 169 605 181
+rect 835 215 893 227
+rect 835 181 847 215
+rect 881 181 893 215
+rect 835 169 893 181
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 115 88 173 100
+rect 931 102 989 114
+rect 931 68 943 102
+rect 977 68 989 102
+rect 931 48 989 68
+rect 0 17 1152 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1152 17
+rect 0 -48 1152 -17
+<< labels >>
+rlabel locali 0 618 1152 714 0 VDD
+port 1 se
+rlabel metal1 0 618 1152 714 0 VDD
+port 2 se
+rlabel locali 0 -48 1152 48 0 GND
+port 3 se
+rlabel metal1 0 -48 1152 48 0 GND
+port 4 se
+rlabel metal1 115 88 173 146 0 Y
+port 5 se
+rlabel metal1 130 146 158 439 0 Y
+port 6 se
+rlabel metal1 115 439 173 454 0 Y
+port 7 se
+rlabel metal1 643 439 701 454 0 Y
+port 8 se
+rlabel metal1 115 454 701 482 0 Y
+port 9 se
+rlabel metal1 115 482 173 497 0 Y
+port 10 se
+rlabel metal1 643 482 701 497 0 Y
+port 11 se
+rlabel metal1 259 169 317 227 0 C
+port 12 se
+rlabel metal1 274 227 302 356 0 C
+port 13 se
+rlabel metal1 259 356 317 414 0 C
+port 14 se
+rlabel metal1 547 169 605 227 0 B
+port 15 se
+rlabel metal1 562 227 590 356 0 B
+port 16 se
+rlabel metal1 547 356 605 414 0 B
+port 17 se
+rlabel metal1 835 169 893 227 0 A
+port 18 se
+rlabel metal1 850 227 878 356 0 A
+port 19 se
+rlabel metal1 835 356 893 414 0 A
+port 20 se
+<< properties >>
+string FIXED_BBOX 0 0 1152 666
+<< end >>
diff --git a/cells/mag/OR2X1.mag b/cells/mag/OR2X1.mag
index fcff2a8..115a754 100644
--- a/cells/mag/OR2X1.mag
+++ b/cells/mag/OR2X1.mag
@@ -1,349 +1,350 @@
 magic
 tech sky130A
-timestamp 1624703695
+magscale 1 2
+timestamp 1624887590
+<< checkpaint >>
+rect -1260 -1374 11260 2038
 << nwell >>
-rect 0 179 576 333
+rect 0 358 1152 666
 << nmos >>
-rect 137 24 152 66
-rect 281 24 296 66
-rect 425 24 440 66
+rect 273 48 303 132
+rect 561 48 591 132
+rect 849 48 879 132
 << pmos >>
-rect 137 225 152 309
-rect 281 225 296 309
-rect 425 225 440 309
+rect 273 450 303 618
+rect 561 450 591 618
+rect 849 450 879 618
 << ndiff >>
-rect 226 67 255 73
-rect 226 66 232 67
-rect 58 51 137 66
-rect 58 34 64 51
-rect 81 34 137 51
-rect 58 24 137 34
-rect 152 50 232 66
-rect 249 66 255 67
-rect 466 67 495 73
-rect 466 66 472 67
-rect 249 50 281 66
-rect 152 24 281 50
-rect 296 51 425 66
-rect 296 34 328 51
-rect 345 34 425 51
-rect 296 24 425 34
-rect 440 50 472 66
-rect 489 66 495 67
-rect 489 50 519 66
-rect 440 24 519 50
+rect 451 134 509 146
+rect 451 132 463 134
+rect 115 102 273 132
+rect 115 68 127 102
+rect 161 68 273 102
+rect 115 48 273 68
+rect 303 100 463 132
+rect 497 132 509 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 497 100 561 132
+rect 303 48 561 100
+rect 591 102 849 132
+rect 591 68 655 102
+rect 689 68 849 102
+rect 591 48 849 68
+rect 879 100 943 132
+rect 977 132 989 134
+rect 977 100 1037 132
+rect 879 48 1037 100
 << pdiff >>
-rect 58 243 137 309
-rect 58 226 88 243
-rect 105 226 137 243
-rect 58 225 137 226
-rect 152 225 281 309
-rect 296 299 425 309
-rect 296 282 328 299
-rect 345 282 425 299
-rect 296 225 425 282
-rect 440 243 519 309
-rect 440 226 472 243
-rect 489 226 519 243
-rect 440 225 519 226
-rect 82 220 111 225
-rect 466 220 495 225
+rect 115 485 273 618
+rect 115 451 175 485
+rect 209 451 273 485
+rect 115 450 273 451
+rect 303 450 561 618
+rect 591 598 849 618
+rect 591 564 655 598
+rect 689 564 849 598
+rect 591 450 849 564
+rect 879 485 1037 618
+rect 879 451 943 485
+rect 977 451 1037 485
+rect 879 450 1037 451
+rect 163 439 221 450
+rect 931 439 989 450
 << ndiffc >>
-rect 64 34 81 51
-rect 232 50 249 67
-rect 328 34 345 51
-rect 472 50 489 67
+rect 127 68 161 102
+rect 463 100 497 134
+rect 655 68 689 102
+rect 943 100 977 134
 << pdiffc >>
-rect 88 226 105 243
-rect 328 282 345 299
-rect 472 226 489 243
+rect 175 451 209 485
+rect 655 564 689 598
+rect 943 451 977 485
 << poly >>
-rect 137 309 152 322
-rect 281 309 296 322
-rect 425 309 440 322
-rect 137 209 152 225
-rect 281 209 296 225
-rect 425 209 440 225
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 416 201 449 209
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 91 305 108
-rect 272 83 305 91
-rect 416 108 449 116
-rect 416 91 424 108
-rect 441 91 449 108
-rect 416 83 449 91
-rect 137 66 152 83
-rect 281 66 296 83
-rect 425 66 440 83
-rect 137 11 152 24
-rect 281 11 296 24
-rect 425 11 440 24
+rect 273 618 303 644
+rect 561 618 591 644
+rect 849 618 879 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 849 418 879 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 849 132 879 165
+rect 273 22 303 48
+rect 561 22 591 48
+rect 849 22 879 48
 << polycont >>
-rect 136 184 153 201
-rect 280 184 297 201
-rect 424 184 441 201
-rect 136 91 153 108
-rect 280 91 297 108
-rect 424 91 441 108
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
 << locali >>
-rect 0 342 576 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 448 342
-rect 465 325 496 342
-rect 513 325 544 342
-rect 561 325 576 342
-rect 0 309 576 325
-rect 320 299 353 309
-rect 320 282 328 299
-rect 345 282 353 299
-rect 320 274 353 282
-rect 80 243 113 251
-rect 80 226 88 243
-rect 105 226 113 243
-rect 464 243 497 251
-rect 464 226 472 243
-rect 489 226 497 243
-rect 80 218 111 226
-rect 466 218 497 226
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 416 201 449 209
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 136 116 153 131
-rect 280 116 297 131
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 272 108 305 116
-rect 272 92 280 108
-rect 128 83 161 91
-rect 274 91 280 92
-rect 297 91 305 108
-rect 274 83 305 91
-rect 416 108 449 116
-rect 416 91 424 108
-rect 441 91 449 108
-rect 416 83 449 91
-rect 224 67 257 75
-rect 56 51 89 59
-rect 56 34 64 51
-rect 81 34 89 51
-rect 224 50 232 67
-rect 249 50 257 67
-rect 466 67 497 75
-rect 466 66 472 67
-rect 224 42 257 50
-rect 320 51 353 59
-rect 56 24 89 34
-rect 320 34 328 51
-rect 345 34 353 51
-rect 464 50 472 66
-rect 489 50 497 67
-rect 464 42 497 50
-rect 320 24 353 34
-rect 0 9 576 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 448 9
-rect 465 -9 496 9
-rect 513 -9 544 9
-rect 561 -9 576 9
-rect 0 -24 576 -9
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1152 683
+rect 31 618 1121 649
+rect 639 598 705 618
+rect 639 564 655 598
+rect 689 564 705 598
+rect 639 548 705 564
+rect 159 485 225 501
+rect 159 451 175 485
+rect 209 452 225 485
+rect 927 485 993 501
+rect 927 452 943 485
+rect 209 451 221 452
+rect 159 435 221 451
+rect 931 451 943 452
+rect 977 451 993 485
+rect 931 435 993 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 271 231 305 262
+rect 559 231 593 352
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 543 215 609 231
+rect 543 184 559 215
+rect 255 165 321 181
+rect 547 181 559 184
+rect 593 181 609 215
+rect 547 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 447 134 513 150
+rect 111 102 177 118
+rect 111 68 127 102
+rect 161 68 177 102
+rect 447 100 463 134
+rect 497 100 513 134
+rect 931 134 993 150
+rect 931 131 943 134
+rect 447 84 513 100
+rect 639 102 705 118
+rect 111 48 177 68
+rect 639 68 655 102
+rect 689 68 705 102
+rect 927 100 943 131
+rect 977 100 993 134
+rect 927 84 993 100
+rect 639 48 705 68
+rect 31 17 1121 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1152 17
 << viali >>
-rect 16 325 33 342
-rect 64 325 81 342
-rect 112 325 129 342
-rect 160 325 177 342
-rect 208 325 225 342
-rect 256 325 273 342
-rect 304 325 321 342
-rect 352 325 369 342
-rect 400 325 417 342
-rect 448 325 465 342
-rect 496 325 513 342
-rect 544 325 561 342
-rect 328 282 345 299
-rect 88 226 105 243
-rect 472 226 489 243
-rect 136 184 153 201
-rect 280 184 297 201
-rect 424 184 441 201
-rect 136 131 153 148
-rect 280 131 297 148
-rect 424 91 441 108
-rect 64 34 81 51
-rect 232 50 249 67
-rect 328 34 345 51
-rect 472 50 489 67
-rect 16 -9 33 9
-rect 64 -9 81 9
-rect 112 -9 129 9
-rect 160 -9 177 9
-rect 208 -9 225 9
-rect 256 -9 273 9
-rect 304 -9 321 9
-rect 352 -9 369 9
-rect 400 -9 417 9
-rect 448 -9 465 9
-rect 496 -9 513 9
-rect 544 -9 561 9
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 895 649 929 683
+rect 991 649 1025 683
+rect 1087 649 1121 683
+rect 655 564 689 598
+rect 175 451 209 485
+rect 943 451 977 485
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 271 262 305 296
+rect 847 181 881 215
+rect 127 68 161 102
+rect 463 100 497 134
+rect 655 68 689 102
+rect 943 100 977 134
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
+rect 895 -17 929 17
+rect 991 -17 1025 17
+rect 1087 -17 1121 17
 << metal1 >>
-rect 0 342 576 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 448 342
-rect 465 325 496 342
-rect 513 325 544 342
-rect 561 325 576 342
-rect 0 309 576 325
-rect 322 299 351 309
-rect 322 282 328 299
-rect 345 282 351 299
-rect 322 276 351 282
-rect 82 243 111 249
-rect 82 226 88 243
-rect 105 226 111 243
-rect 82 220 111 226
-rect 466 243 495 249
-rect 466 226 472 243
-rect 489 226 495 243
-rect 466 220 495 226
-rect 89 106 103 220
-rect 130 201 159 207
-rect 130 184 136 201
-rect 153 184 159 201
-rect 130 178 159 184
-rect 274 201 303 207
-rect 274 184 280 201
-rect 297 184 303 201
-rect 274 178 303 184
-rect 418 201 447 207
-rect 418 184 424 201
-rect 441 184 447 201
-rect 418 178 447 184
-rect 137 154 151 178
-rect 281 154 295 178
-rect 130 148 159 154
-rect 130 131 136 148
-rect 153 131 159 148
-rect 130 125 159 131
-rect 274 148 303 154
-rect 274 131 280 148
-rect 297 131 303 148
-rect 274 125 303 131
-rect 425 114 439 178
-rect 418 108 447 114
-rect 418 106 424 108
-rect 89 92 424 106
-rect 233 73 247 92
-rect 418 91 424 92
-rect 441 91 447 108
-rect 418 85 447 91
-rect 473 73 487 220
-rect 226 67 255 73
-rect 58 51 87 57
-rect 58 34 64 51
-rect 81 34 87 51
-rect 226 50 232 67
-rect 249 50 255 67
-rect 466 67 495 73
-rect 226 44 255 50
-rect 322 51 351 57
-rect 58 24 87 34
-rect 322 34 328 51
-rect 345 34 351 51
-rect 466 50 472 67
-rect 489 50 495 67
-rect 466 44 495 50
-rect 322 24 351 34
-rect 0 9 576 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 448 9
-rect 465 -9 496 9
-rect 513 -9 544 9
-rect 561 -9 576 9
-rect 0 -24 576 -9
+rect 0 683 1152 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1152 683
+rect 0 618 1152 649
+rect 643 598 701 618
+rect 643 564 655 598
+rect 689 564 701 598
+rect 643 552 701 564
+rect 163 485 221 497
+rect 163 451 175 485
+rect 209 451 221 485
+rect 163 439 221 451
+rect 931 485 989 497
+rect 931 451 943 485
+rect 977 451 989 485
+rect 931 439 989 451
+rect 178 212 206 439
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 368 317 402
+rect 259 356 317 368
+rect 547 402 605 414
+rect 547 368 559 402
+rect 593 368 605 402
+rect 547 356 605 368
+rect 835 402 893 414
+rect 835 368 847 402
+rect 881 368 893 402
+rect 835 356 893 368
+rect 274 308 302 356
+rect 259 296 317 308
+rect 259 262 271 296
+rect 305 262 317 296
+rect 259 250 317 262
+rect 850 227 878 356
+rect 835 215 893 227
+rect 835 212 847 215
+rect 178 184 847 212
+rect 466 146 494 184
+rect 835 181 847 184
+rect 881 181 893 215
+rect 835 169 893 181
+rect 946 146 974 439
+rect 451 134 509 146
+rect 115 102 173 114
+rect 115 68 127 102
+rect 161 68 173 102
+rect 451 100 463 134
+rect 497 100 509 134
+rect 931 134 989 146
+rect 451 88 509 100
+rect 643 102 701 114
+rect 115 48 173 68
+rect 643 68 655 102
+rect 689 68 701 102
+rect 931 100 943 134
+rect 977 100 989 134
+rect 931 88 989 100
+rect 643 48 701 68
+rect 0 17 1152 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1152 17
+rect 0 -48 1152 -17
 << labels >>
-rlabel locali 0 309 576 357 0 VDD
+rlabel metal1 0 618 1152 714 0 VDD
 port 1 se
-rlabel metal1 0 309 576 357 0 VDD
+rlabel metal1 0 618 1152 714 0 VDD
 port 2 se
-rlabel locali 0 -24 576 24 0 GND
+rlabel metal1 0 -48 1152 48 0 GND
 port 3 se
-rlabel metal1 0 -24 576 24 0 GND
+rlabel metal1 0 -48 1152 48 0 GND
 port 4 se
-rlabel metal1 466 44 495 73 0 Y
+rlabel metal1 931 88 989 146 0 Y
 port 5 se
-rlabel metal1 473 73 487 220 0 Y
+rlabel metal1 946 146 974 439 0 Y
 port 6 se
-rlabel metal1 466 220 495 249 0 Y
+rlabel metal1 931 439 989 497 0 Y
 port 7 se
-rlabel metal1 274 125 303 154 0 B
+rlabel metal1 259 250 317 308 0 A
 port 8 se
-rlabel metal1 281 154 295 178 0 B
+rlabel metal1 274 308 302 356 0 A
 port 9 se
-rlabel metal1 274 178 303 207 0 B
+rlabel metal1 259 356 317 414 0 A
 port 10 se
-rlabel metal1 130 125 159 154 0 A
+rlabel metal1 547 356 605 414 0 B
 port 11 se
-rlabel metal1 137 154 151 178 0 A
-port 12 se
-rlabel metal1 130 178 159 207 0 A
-port 13 se
+rlabel locali 0 -17 1152 17 4 GND
+port 3 se
+rlabel locali 31 17 1121 48 4 GND
+port 3 se
+rlabel locali 0 649 1152 683 4 VDD
+port 1 se
+rlabel locali 31 618 1121 649 4 VDD
+port 1 se
 << properties >>
-string FIXED_BBOX 0 0 576 333
+string FIXED_BBOX 0 0 1152 666
 << end >>
diff --git a/cells/mag/OR2X1.mag.beforemagic b/cells/mag/OR2X1.mag.beforemagic
new file mode 100644
index 0000000..6299fec
--- /dev/null
+++ b/cells/mag/OR2X1.mag.beforemagic
@@ -0,0 +1,342 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1624753856
+<< nwell >>
+rect 0 358 1152 666
+<< nmos >>
+rect 273 48 303 132
+rect 561 48 591 132
+rect 849 48 879 132
+<< pmos >>
+rect 273 450 303 618
+rect 561 450 591 618
+rect 849 450 879 618
+<< ndiff >>
+rect 451 134 509 146
+rect 451 132 463 134
+rect 115 102 273 132
+rect 115 68 127 102
+rect 161 68 273 102
+rect 115 48 273 68
+rect 303 100 463 132
+rect 497 132 509 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 497 100 561 132
+rect 303 48 561 100
+rect 591 102 849 132
+rect 591 68 655 102
+rect 689 68 849 102
+rect 591 48 849 68
+rect 879 100 943 132
+rect 977 132 989 134
+rect 977 100 1037 132
+rect 879 48 1037 100
+<< pdiff >>
+rect 115 485 273 618
+rect 115 451 175 485
+rect 209 451 273 485
+rect 115 450 273 451
+rect 303 450 561 618
+rect 591 598 849 618
+rect 591 564 655 598
+rect 689 564 849 598
+rect 591 450 849 564
+rect 879 485 1037 618
+rect 879 451 943 485
+rect 977 451 1037 485
+rect 879 450 1037 451
+rect 163 439 221 450
+rect 931 439 989 450
+<< ndiffc >>
+rect 127 68 161 102
+rect 463 100 497 134
+rect 655 68 689 102
+rect 943 100 977 134
+<< pdiffc >>
+rect 175 451 209 485
+rect 655 564 689 598
+rect 943 451 977 485
+<< poly >>
+rect 273 618 303 644
+rect 561 618 591 644
+rect 849 618 879 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 849 418 879 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 849 132 879 165
+rect 273 22 303 48
+rect 561 22 591 48
+rect 849 22 879 48
+<< polycont >>
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+<< locali >>
+rect 0 683 1152 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1152 683
+rect 0 618 1152 649
+rect 639 598 705 618
+rect 639 564 655 598
+rect 689 564 705 598
+rect 639 548 705 564
+rect 159 485 225 501
+rect 159 451 175 485
+rect 209 452 225 485
+rect 927 485 993 501
+rect 927 452 943 485
+rect 209 451 221 452
+rect 159 435 221 451
+rect 931 451 943 452
+rect 977 451 993 485
+rect 931 435 993 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 271 231 305 262
+rect 559 231 593 352
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 543 215 609 231
+rect 543 184 559 215
+rect 255 165 321 181
+rect 547 181 559 184
+rect 593 181 609 215
+rect 547 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 447 134 513 150
+rect 111 102 177 118
+rect 111 68 127 102
+rect 161 68 177 102
+rect 447 100 463 134
+rect 497 100 513 134
+rect 931 134 993 150
+rect 931 131 943 134
+rect 447 84 513 100
+rect 639 102 705 118
+rect 111 48 177 68
+rect 639 68 655 102
+rect 689 68 705 102
+rect 927 100 943 131
+rect 977 100 993 134
+rect 927 84 993 100
+rect 639 48 705 68
+rect 0 17 1152 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1152 17
+rect 0 -48 1152 -17
+<< viali >>
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 895 649 929 683
+rect 991 649 1025 683
+rect 1087 649 1121 683
+rect 655 564 689 598
+rect 175 451 209 485
+rect 943 451 977 485
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 271 262 305 296
+rect 847 181 881 215
+rect 127 68 161 102
+rect 463 100 497 134
+rect 655 68 689 102
+rect 943 100 977 134
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
+rect 895 -17 929 17
+rect 991 -17 1025 17
+rect 1087 -17 1121 17
+<< metal1 >>
+rect 0 683 1152 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1152 683
+rect 0 618 1152 649
+rect 643 598 701 618
+rect 643 564 655 598
+rect 689 564 701 598
+rect 643 552 701 564
+rect 163 485 221 497
+rect 163 451 175 485
+rect 209 451 221 485
+rect 163 439 221 451
+rect 931 485 989 497
+rect 931 451 943 485
+rect 977 451 989 485
+rect 931 439 989 451
+rect 178 212 206 439
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 368 317 402
+rect 259 356 317 368
+rect 547 402 605 414
+rect 547 368 559 402
+rect 593 368 605 402
+rect 547 356 605 368
+rect 835 402 893 414
+rect 835 368 847 402
+rect 881 368 893 402
+rect 835 356 893 368
+rect 274 308 302 356
+rect 259 296 317 308
+rect 259 262 271 296
+rect 305 262 317 296
+rect 259 250 317 262
+rect 850 227 878 356
+rect 835 215 893 227
+rect 835 212 847 215
+rect 178 184 847 212
+rect 466 146 494 184
+rect 835 181 847 184
+rect 881 181 893 215
+rect 835 169 893 181
+rect 946 146 974 439
+rect 451 134 509 146
+rect 115 102 173 114
+rect 115 68 127 102
+rect 161 68 173 102
+rect 451 100 463 134
+rect 497 100 509 134
+rect 931 134 989 146
+rect 451 88 509 100
+rect 643 102 701 114
+rect 115 48 173 68
+rect 643 68 655 102
+rect 689 68 701 102
+rect 931 100 943 134
+rect 977 100 989 134
+rect 931 88 989 100
+rect 643 48 701 68
+rect 0 17 1152 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1152 17
+rect 0 -48 1152 -17
+<< labels >>
+rlabel locali 0 618 1152 714 0 VDD
+port 1 se
+rlabel metal1 0 618 1152 714 0 VDD
+port 2 se
+rlabel locali 0 -48 1152 48 0 GND
+port 3 se
+rlabel metal1 0 -48 1152 48 0 GND
+port 4 se
+rlabel metal1 931 88 989 146 0 Y
+port 5 se
+rlabel metal1 946 146 974 439 0 Y
+port 6 se
+rlabel metal1 931 439 989 497 0 Y
+port 7 se
+rlabel metal1 259 250 317 308 0 A
+port 8 se
+rlabel metal1 274 308 302 356 0 A
+port 9 se
+rlabel metal1 259 356 317 414 0 A
+port 10 se
+rlabel metal1 547 356 605 414 0 B
+port 11 se
+<< properties >>
+string FIXED_BBOX 0 0 1152 666
+<< end >>
diff --git a/cells/mag/OR2X2.mag b/cells/mag/OR2X2.mag
index 9585b22..7403292 100644
--- a/cells/mag/OR2X2.mag
+++ b/cells/mag/OR2X2.mag
@@ -1,344 +1,350 @@
 magic
 tech sky130A
-timestamp 1624703741
+magscale 1 2
+timestamp 1624887591
+<< checkpaint >>
+rect -1260 -1374 11260 2038
 << nwell >>
-rect 0 179 576 333
+rect 0 358 1152 666
 << nmos >>
-rect 137 24 152 66
-rect 281 24 296 66
-rect 425 24 440 66
+rect 273 48 303 132
+rect 561 48 591 132
+rect 849 48 879 132
 << pmos >>
-rect 137 225 152 309
-rect 281 225 296 309
-rect 425 225 440 309
+rect 273 450 303 618
+rect 561 450 591 618
+rect 849 450 879 618
 << ndiff >>
-rect 226 67 255 73
-rect 226 66 232 67
-rect 58 51 137 66
-rect 58 34 64 51
-rect 81 34 137 51
-rect 58 24 137 34
-rect 152 50 232 66
-rect 249 66 255 67
-rect 466 67 495 73
-rect 466 66 472 67
-rect 249 50 281 66
-rect 152 24 281 50
-rect 296 51 425 66
-rect 296 34 328 51
-rect 345 34 425 51
-rect 296 24 425 34
-rect 440 50 472 66
-rect 489 66 495 67
-rect 489 50 519 66
-rect 440 24 519 50
+rect 451 134 509 146
+rect 451 132 463 134
+rect 115 102 273 132
+rect 115 68 127 102
+rect 161 68 273 102
+rect 115 48 273 68
+rect 303 100 463 132
+rect 497 132 509 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 497 100 561 132
+rect 303 48 561 100
+rect 591 102 849 132
+rect 591 68 655 102
+rect 689 68 849 102
+rect 591 48 849 68
+rect 879 100 943 132
+rect 977 132 989 134
+rect 977 100 1037 132
+rect 879 48 1037 100
 << pdiff >>
-rect 58 243 137 309
-rect 58 226 88 243
-rect 105 226 137 243
-rect 58 225 137 226
-rect 152 225 281 309
-rect 296 299 425 309
-rect 296 282 328 299
-rect 345 282 425 299
-rect 296 225 425 282
-rect 440 243 519 309
-rect 440 226 472 243
-rect 489 226 519 243
-rect 440 225 519 226
-rect 82 220 111 225
-rect 466 220 495 225
+rect 115 485 273 618
+rect 115 451 175 485
+rect 209 451 273 485
+rect 115 450 273 451
+rect 303 450 561 618
+rect 591 598 849 618
+rect 591 564 655 598
+rect 689 564 849 598
+rect 591 450 849 564
+rect 879 485 1037 618
+rect 879 451 943 485
+rect 977 451 1037 485
+rect 879 450 1037 451
+rect 163 439 221 450
+rect 931 439 989 450
 << ndiffc >>
-rect 64 34 81 51
-rect 232 50 249 67
-rect 328 34 345 51
-rect 472 50 489 67
+rect 127 68 161 102
+rect 463 100 497 134
+rect 655 68 689 102
+rect 943 100 977 134
 << pdiffc >>
-rect 88 226 105 243
-rect 328 282 345 299
-rect 472 226 489 243
+rect 175 451 209 485
+rect 655 564 689 598
+rect 943 451 977 485
 << poly >>
-rect 137 309 152 322
-rect 281 309 296 322
-rect 425 309 440 322
-rect 137 209 152 225
-rect 281 209 296 225
-rect 425 209 440 225
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 416 201 449 209
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 91 305 108
-rect 272 83 305 91
-rect 416 108 449 116
-rect 416 91 424 108
-rect 441 91 449 108
-rect 416 83 449 91
-rect 137 66 152 83
-rect 281 66 296 83
-rect 425 66 440 83
-rect 137 11 152 24
-rect 281 11 296 24
-rect 425 11 440 24
+rect 273 618 303 644
+rect 561 618 591 644
+rect 849 618 879 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 849 418 879 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 849 132 879 165
+rect 273 22 303 48
+rect 561 22 591 48
+rect 849 22 879 48
 << polycont >>
-rect 136 184 153 201
-rect 280 184 297 201
-rect 424 184 441 201
-rect 136 91 153 108
-rect 280 91 297 108
-rect 424 91 441 108
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
 << locali >>
-rect 0 342 576 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 448 342
-rect 465 325 496 342
-rect 513 325 544 342
-rect 561 325 576 342
-rect 0 309 576 325
-rect 320 299 353 309
-rect 320 282 328 299
-rect 345 282 353 299
-rect 320 274 353 282
-rect 80 243 113 251
-rect 80 226 88 243
-rect 105 226 113 243
-rect 464 243 497 251
-rect 464 226 472 243
-rect 489 226 497 243
-rect 80 218 111 226
-rect 466 218 497 226
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 416 201 449 209
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 272 108 305 116
-rect 272 92 280 108
-rect 128 83 161 91
-rect 274 91 280 92
-rect 297 91 305 108
-rect 274 83 305 91
-rect 416 108 449 116
-rect 416 91 424 108
-rect 441 91 449 108
-rect 416 83 449 91
-rect 224 67 257 75
-rect 56 51 89 59
-rect 56 34 64 51
-rect 81 34 89 51
-rect 224 50 232 67
-rect 249 50 257 67
-rect 466 67 497 75
-rect 466 66 472 67
-rect 224 42 257 50
-rect 320 51 353 59
-rect 56 24 89 34
-rect 320 34 328 51
-rect 345 34 353 51
-rect 464 50 472 66
-rect 489 50 497 67
-rect 464 42 497 50
-rect 320 24 353 34
-rect 0 9 576 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 448 9
-rect 465 -9 496 9
-rect 513 -9 544 9
-rect 561 -9 576 9
-rect 0 -24 576 -9
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1152 683
+rect 31 618 1121 649
+rect 639 598 705 618
+rect 639 564 655 598
+rect 689 564 705 598
+rect 639 548 705 564
+rect 159 485 225 501
+rect 159 451 175 485
+rect 209 452 225 485
+rect 927 485 993 501
+rect 927 452 943 485
+rect 209 451 221 452
+rect 159 435 221 451
+rect 931 451 943 452
+rect 977 451 993 485
+rect 931 435 993 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 271 231 305 352
+rect 559 231 593 262
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 543 215 609 231
+rect 543 184 559 215
+rect 255 165 321 181
+rect 547 181 559 184
+rect 593 181 609 215
+rect 547 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 447 134 513 150
+rect 111 102 177 118
+rect 111 68 127 102
+rect 161 68 177 102
+rect 447 100 463 134
+rect 497 100 513 134
+rect 931 134 993 150
+rect 931 131 943 134
+rect 447 84 513 100
+rect 639 102 705 118
+rect 111 48 177 68
+rect 639 68 655 102
+rect 689 68 705 102
+rect 927 100 943 131
+rect 977 100 993 134
+rect 927 84 993 100
+rect 639 48 705 68
+rect 31 17 1121 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1152 17
 << viali >>
-rect 16 325 33 342
-rect 64 325 81 342
-rect 112 325 129 342
-rect 160 325 177 342
-rect 208 325 225 342
-rect 256 325 273 342
-rect 304 325 321 342
-rect 352 325 369 342
-rect 400 325 417 342
-rect 448 325 465 342
-rect 496 325 513 342
-rect 544 325 561 342
-rect 328 282 345 299
-rect 88 226 105 243
-rect 472 226 489 243
-rect 136 184 153 201
-rect 280 184 297 201
-rect 424 184 441 201
-rect 136 91 153 108
-rect 280 91 297 108
-rect 424 91 441 108
-rect 64 34 81 51
-rect 232 50 249 67
-rect 472 50 489 67
-rect 16 -9 33 9
-rect 64 -9 81 9
-rect 112 -9 129 9
-rect 160 -9 177 9
-rect 208 -9 225 9
-rect 256 -9 273 9
-rect 304 -9 321 9
-rect 352 -9 369 9
-rect 400 -9 417 9
-rect 448 -9 465 9
-rect 496 -9 513 9
-rect 544 -9 561 9
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 895 649 929 683
+rect 991 649 1025 683
+rect 1087 649 1121 683
+rect 655 564 689 598
+rect 175 451 209 485
+rect 943 451 977 485
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 559 262 593 296
+rect 847 181 881 215
+rect 127 68 161 102
+rect 463 100 497 134
+rect 655 68 689 102
+rect 943 100 977 134
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
+rect 895 -17 929 17
+rect 991 -17 1025 17
+rect 1087 -17 1121 17
 << metal1 >>
-rect 0 342 576 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 448 342
-rect 465 325 496 342
-rect 513 325 544 342
-rect 561 325 576 342
-rect 0 309 576 325
-rect 322 299 351 309
-rect 322 282 328 299
-rect 345 282 351 299
-rect 322 276 351 282
-rect 82 243 111 249
-rect 82 226 88 243
-rect 105 241 111 243
-rect 466 243 495 249
-rect 105 227 247 241
-rect 105 226 111 227
-rect 82 220 111 226
-rect 130 201 159 207
-rect 130 184 136 201
-rect 153 184 159 201
-rect 130 178 159 184
-rect 137 114 151 178
-rect 130 108 159 114
-rect 130 91 136 108
-rect 153 91 159 108
-rect 130 85 159 91
-rect 233 73 247 227
-rect 466 226 472 243
-rect 489 226 495 243
-rect 466 220 495 226
-rect 274 201 303 207
-rect 274 184 280 201
-rect 297 184 303 201
-rect 274 178 303 184
-rect 418 201 447 207
-rect 418 184 424 201
-rect 441 184 447 201
-rect 418 178 447 184
-rect 281 114 295 178
-rect 425 114 439 178
-rect 274 108 303 114
-rect 274 91 280 108
-rect 297 91 303 108
-rect 274 85 303 91
-rect 418 108 447 114
-rect 418 91 424 108
-rect 441 91 447 108
-rect 418 85 447 91
-rect 226 67 255 73
-rect 58 51 87 57
-rect 58 34 64 51
-rect 81 34 87 51
-rect 226 50 232 67
-rect 249 66 255 67
-rect 425 66 439 85
-rect 473 73 487 220
-rect 249 52 439 66
-rect 466 67 495 73
-rect 249 50 255 52
-rect 226 44 255 50
-rect 466 50 472 67
-rect 489 50 495 67
-rect 466 44 495 50
-rect 58 24 87 34
-rect 0 9 576 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 448 9
-rect 465 -9 496 9
-rect 513 -9 544 9
-rect 561 -9 576 9
-rect 0 -24 576 -9
+rect 0 683 1152 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1152 683
+rect 0 618 1152 649
+rect 643 598 701 618
+rect 643 564 655 598
+rect 689 564 701 598
+rect 643 552 701 564
+rect 163 485 221 497
+rect 163 451 175 485
+rect 209 451 221 485
+rect 163 439 221 451
+rect 931 485 989 497
+rect 931 451 943 485
+rect 977 451 989 485
+rect 931 439 989 451
+rect 178 212 206 439
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 368 317 402
+rect 259 356 317 368
+rect 547 402 605 414
+rect 547 368 559 402
+rect 593 368 605 402
+rect 547 356 605 368
+rect 835 402 893 414
+rect 835 368 847 402
+rect 881 368 893 402
+rect 835 356 893 368
+rect 562 308 590 356
+rect 547 296 605 308
+rect 547 262 559 296
+rect 593 262 605 296
+rect 547 250 605 262
+rect 850 227 878 356
+rect 835 215 893 227
+rect 835 212 847 215
+rect 178 184 847 212
+rect 466 146 494 184
+rect 835 181 847 184
+rect 881 181 893 215
+rect 835 169 893 181
+rect 946 146 974 439
+rect 451 134 509 146
+rect 115 102 173 114
+rect 115 68 127 102
+rect 161 68 173 102
+rect 451 100 463 134
+rect 497 100 509 134
+rect 931 134 989 146
+rect 451 88 509 100
+rect 643 102 701 114
+rect 115 48 173 68
+rect 643 68 655 102
+rect 689 68 701 102
+rect 931 100 943 134
+rect 977 100 989 134
+rect 931 88 989 100
+rect 643 48 701 68
+rect 0 17 1152 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1152 17
+rect 0 -48 1152 -17
 << labels >>
-rlabel locali 0 309 576 357 0 VDD
+rlabel metal1 0 618 1152 714 0 VDD
 port 1 se
-rlabel metal1 0 309 576 357 0 VDD
+rlabel metal1 0 618 1152 714 0 VDD
 port 2 se
-rlabel locali 0 -24 576 24 0 GND
+rlabel metal1 0 -48 1152 48 0 GND
 port 3 se
-rlabel metal1 0 -24 576 24 0 GND
+rlabel metal1 0 -48 1152 48 0 GND
 port 4 se
-rlabel metal1 466 44 495 73 0 Y
+rlabel metal1 931 88 989 146 0 Y
 port 5 se
-rlabel metal1 473 73 487 220 0 Y
+rlabel metal1 946 146 974 439 0 Y
 port 6 se
-rlabel metal1 466 220 495 249 0 Y
+rlabel metal1 931 439 989 497 0 Y
 port 7 se
-rlabel metal1 274 85 303 114 0 B
+rlabel metal1 259 356 317 414 0 A
 port 8 se
-rlabel metal1 281 114 295 178 0 B
+rlabel metal1 547 250 605 308 0 B
 port 9 se
-rlabel metal1 274 178 303 207 0 B
+rlabel metal1 562 308 590 356 0 B
 port 10 se
-rlabel metal1 130 85 159 114 0 A
+rlabel metal1 547 356 605 414 0 B
 port 11 se
-rlabel metal1 137 114 151 178 0 A
-port 12 se
-rlabel metal1 130 178 159 207 0 A
-port 13 se
+rlabel locali 0 -17 1152 17 4 GND
+port 3 se
+rlabel locali 31 17 1121 48 4 GND
+port 3 se
+rlabel locali 0 649 1152 683 4 VDD
+port 1 se
+rlabel locali 31 618 1121 649 4 VDD
+port 1 se
 << properties >>
-string FIXED_BBOX 0 0 576 333
+string FIXED_BBOX 0 0 1152 666
 << end >>
diff --git a/cells/mag/OR2X2.mag.beforemagic b/cells/mag/OR2X2.mag.beforemagic
new file mode 100644
index 0000000..8575741
--- /dev/null
+++ b/cells/mag/OR2X2.mag.beforemagic
@@ -0,0 +1,342 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1624753902
+<< nwell >>
+rect 0 358 1152 666
+<< nmos >>
+rect 273 48 303 132
+rect 561 48 591 132
+rect 849 48 879 132
+<< pmos >>
+rect 273 450 303 618
+rect 561 450 591 618
+rect 849 450 879 618
+<< ndiff >>
+rect 451 134 509 146
+rect 451 132 463 134
+rect 115 102 273 132
+rect 115 68 127 102
+rect 161 68 273 102
+rect 115 48 273 68
+rect 303 100 463 132
+rect 497 132 509 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 497 100 561 132
+rect 303 48 561 100
+rect 591 102 849 132
+rect 591 68 655 102
+rect 689 68 849 102
+rect 591 48 849 68
+rect 879 100 943 132
+rect 977 132 989 134
+rect 977 100 1037 132
+rect 879 48 1037 100
+<< pdiff >>
+rect 115 485 273 618
+rect 115 451 175 485
+rect 209 451 273 485
+rect 115 450 273 451
+rect 303 450 561 618
+rect 591 598 849 618
+rect 591 564 655 598
+rect 689 564 849 598
+rect 591 450 849 564
+rect 879 485 1037 618
+rect 879 451 943 485
+rect 977 451 1037 485
+rect 879 450 1037 451
+rect 163 439 221 450
+rect 931 439 989 450
+<< ndiffc >>
+rect 127 68 161 102
+rect 463 100 497 134
+rect 655 68 689 102
+rect 943 100 977 134
+<< pdiffc >>
+rect 175 451 209 485
+rect 655 564 689 598
+rect 943 451 977 485
+<< poly >>
+rect 273 618 303 644
+rect 561 618 591 644
+rect 849 618 879 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 849 418 879 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 849 132 879 165
+rect 273 22 303 48
+rect 561 22 591 48
+rect 849 22 879 48
+<< polycont >>
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+<< locali >>
+rect 0 683 1152 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1152 683
+rect 0 618 1152 649
+rect 639 598 705 618
+rect 639 564 655 598
+rect 689 564 705 598
+rect 639 548 705 564
+rect 159 485 225 501
+rect 159 451 175 485
+rect 209 452 225 485
+rect 927 485 993 501
+rect 927 452 943 485
+rect 209 451 221 452
+rect 159 435 221 451
+rect 931 451 943 452
+rect 977 451 993 485
+rect 931 435 993 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 271 231 305 352
+rect 559 231 593 262
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 543 215 609 231
+rect 543 184 559 215
+rect 255 165 321 181
+rect 547 181 559 184
+rect 593 181 609 215
+rect 547 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 447 134 513 150
+rect 111 102 177 118
+rect 111 68 127 102
+rect 161 68 177 102
+rect 447 100 463 134
+rect 497 100 513 134
+rect 931 134 993 150
+rect 931 131 943 134
+rect 447 84 513 100
+rect 639 102 705 118
+rect 111 48 177 68
+rect 639 68 655 102
+rect 689 68 705 102
+rect 927 100 943 131
+rect 977 100 993 134
+rect 927 84 993 100
+rect 639 48 705 68
+rect 0 17 1152 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1152 17
+rect 0 -48 1152 -17
+<< viali >>
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 895 649 929 683
+rect 991 649 1025 683
+rect 1087 649 1121 683
+rect 655 564 689 598
+rect 175 451 209 485
+rect 943 451 977 485
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 559 262 593 296
+rect 847 181 881 215
+rect 127 68 161 102
+rect 463 100 497 134
+rect 655 68 689 102
+rect 943 100 977 134
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
+rect 895 -17 929 17
+rect 991 -17 1025 17
+rect 1087 -17 1121 17
+<< metal1 >>
+rect 0 683 1152 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1152 683
+rect 0 618 1152 649
+rect 643 598 701 618
+rect 643 564 655 598
+rect 689 564 701 598
+rect 643 552 701 564
+rect 163 485 221 497
+rect 163 451 175 485
+rect 209 451 221 485
+rect 163 439 221 451
+rect 931 485 989 497
+rect 931 451 943 485
+rect 977 451 989 485
+rect 931 439 989 451
+rect 178 212 206 439
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 368 317 402
+rect 259 356 317 368
+rect 547 402 605 414
+rect 547 368 559 402
+rect 593 368 605 402
+rect 547 356 605 368
+rect 835 402 893 414
+rect 835 368 847 402
+rect 881 368 893 402
+rect 835 356 893 368
+rect 562 308 590 356
+rect 547 296 605 308
+rect 547 262 559 296
+rect 593 262 605 296
+rect 547 250 605 262
+rect 850 227 878 356
+rect 835 215 893 227
+rect 835 212 847 215
+rect 178 184 847 212
+rect 466 146 494 184
+rect 835 181 847 184
+rect 881 181 893 215
+rect 835 169 893 181
+rect 946 146 974 439
+rect 451 134 509 146
+rect 115 102 173 114
+rect 115 68 127 102
+rect 161 68 173 102
+rect 451 100 463 134
+rect 497 100 509 134
+rect 931 134 989 146
+rect 451 88 509 100
+rect 643 102 701 114
+rect 115 48 173 68
+rect 643 68 655 102
+rect 689 68 701 102
+rect 931 100 943 134
+rect 977 100 989 134
+rect 931 88 989 100
+rect 643 48 701 68
+rect 0 17 1152 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1152 17
+rect 0 -48 1152 -17
+<< labels >>
+rlabel locali 0 618 1152 714 0 VDD
+port 1 se
+rlabel metal1 0 618 1152 714 0 VDD
+port 2 se
+rlabel locali 0 -48 1152 48 0 GND
+port 3 se
+rlabel metal1 0 -48 1152 48 0 GND
+port 4 se
+rlabel metal1 931 88 989 146 0 Y
+port 5 se
+rlabel metal1 946 146 974 439 0 Y
+port 6 se
+rlabel metal1 931 439 989 497 0 Y
+port 7 se
+rlabel metal1 259 356 317 414 0 A
+port 8 se
+rlabel metal1 547 250 605 308 0 B
+port 9 se
+rlabel metal1 562 308 590 356 0 B
+port 10 se
+rlabel metal1 547 356 605 414 0 B
+port 11 se
+<< properties >>
+string FIXED_BBOX 0 0 1152 666
+<< end >>
diff --git a/cells/mag/XNOR2X1.mag b/cells/mag/XNOR2X1.mag
index 2623762..1a1bfed 100644
--- a/cells/mag/XNOR2X1.mag
+++ b/cells/mag/XNOR2X1.mag
@@ -1,574 +1,590 @@
 magic
 tech sky130A
-timestamp 1624703817
+magscale 1 2
+timestamp 1624887592
+<< checkpaint >>
+rect -1260 -1374 11260 2038
 << nwell >>
-rect 0 179 1008 333
+rect 0 358 2016 666
 << nmos >>
-rect 137 24 152 66
-rect 281 24 296 66
-rect 425 24 440 66
-rect 569 24 584 66
-rect 713 24 728 66
-rect 857 24 872 66
+rect 273 48 303 132
+rect 561 48 591 132
+rect 849 48 879 132
+rect 1137 48 1167 132
+rect 1425 48 1455 132
+rect 1713 48 1743 132
 << pmos >>
-rect 137 225 152 309
-rect 281 225 296 309
-rect 425 225 440 309
-rect 569 225 584 309
-rect 713 225 728 309
-rect 857 225 872 309
+rect 273 450 303 618
+rect 561 450 591 618
+rect 849 450 879 618
+rect 1137 450 1167 618
+rect 1425 450 1455 618
+rect 1713 450 1743 618
 << ndiff >>
-rect 58 67 87 73
-rect 58 50 64 67
-rect 81 66 87 67
-rect 466 67 495 73
-rect 466 66 472 67
-rect 81 50 137 66
-rect 58 24 137 50
-rect 152 51 281 66
-rect 152 34 184 51
-rect 201 34 281 51
-rect 152 24 281 34
-rect 296 24 425 66
-rect 440 50 472 66
-rect 489 66 495 67
-rect 898 67 927 73
-rect 898 66 904 67
-rect 489 50 569 66
-rect 440 24 569 50
-rect 584 24 713 66
-rect 728 51 857 66
-rect 728 34 760 51
-rect 777 34 857 51
-rect 728 24 857 34
-rect 872 50 904 66
-rect 921 66 927 67
-rect 921 50 951 66
-rect 872 24 951 50
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 132 173 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 102 561 132
+rect 303 68 367 102
+rect 401 68 561 102
+rect 303 48 561 68
+rect 591 48 849 132
+rect 879 100 943 132
+rect 977 132 989 134
+rect 1795 134 1853 146
+rect 1795 132 1807 134
+rect 977 100 1137 132
+rect 879 48 1137 100
+rect 1167 48 1425 132
+rect 1455 102 1713 132
+rect 1455 68 1519 102
+rect 1553 68 1713 102
+rect 1455 48 1713 68
+rect 1743 100 1807 132
+rect 1841 132 1853 134
+rect 1841 100 1901 132
+rect 1743 48 1901 100
 << pdiff >>
-rect 58 243 137 309
-rect 58 226 64 243
-rect 81 226 137 243
-rect 58 225 137 226
-rect 152 299 281 309
-rect 152 282 184 299
-rect 201 282 281 299
-rect 152 225 281 282
-rect 296 225 425 309
-rect 440 243 569 309
-rect 440 226 472 243
-rect 489 226 569 243
-rect 440 225 569 226
-rect 584 225 713 309
-rect 728 299 857 309
-rect 728 282 760 299
-rect 777 282 857 299
-rect 728 225 857 282
-rect 872 243 951 309
-rect 872 226 904 243
-rect 921 226 951 243
-rect 872 225 951 226
-rect 58 220 87 225
-rect 466 220 495 225
-rect 898 220 927 225
+rect 115 485 273 618
+rect 115 451 127 485
+rect 161 451 273 485
+rect 115 450 273 451
+rect 303 598 561 618
+rect 303 564 367 598
+rect 401 564 561 598
+rect 303 450 561 564
+rect 591 450 849 618
+rect 879 485 1137 618
+rect 879 451 943 485
+rect 977 451 1137 485
+rect 879 450 1137 451
+rect 1167 450 1425 618
+rect 1455 598 1713 618
+rect 1455 564 1519 598
+rect 1553 564 1713 598
+rect 1455 450 1713 564
+rect 1743 485 1901 618
+rect 1743 451 1807 485
+rect 1841 451 1901 485
+rect 1743 450 1901 451
+rect 115 439 173 450
+rect 931 439 989 450
+rect 1795 439 1853 450
 << ndiffc >>
-rect 64 50 81 67
-rect 184 34 201 51
-rect 472 50 489 67
-rect 760 34 777 51
-rect 904 50 921 67
+rect 127 100 161 134
+rect 367 68 401 102
+rect 943 100 977 134
+rect 1519 68 1553 102
+rect 1807 100 1841 134
 << pdiffc >>
-rect 64 226 81 243
-rect 184 282 201 299
-rect 472 226 489 243
-rect 760 282 777 299
-rect 904 226 921 243
+rect 127 451 161 485
+rect 367 564 401 598
+rect 943 451 977 485
+rect 1519 564 1553 598
+rect 1807 451 1841 485
 << poly >>
-rect 137 309 152 322
-rect 281 309 296 322
-rect 425 309 440 322
-rect 569 309 584 322
-rect 713 309 728 322
-rect 857 309 872 322
-rect 137 209 152 225
-rect 281 209 296 225
-rect 425 209 440 225
-rect 569 209 584 225
-rect 713 209 728 225
-rect 857 209 872 225
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 416 201 449 209
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 560 201 593 209
-rect 560 184 568 201
-rect 585 184 593 201
-rect 560 176 593 184
-rect 704 201 737 209
-rect 704 184 712 201
-rect 729 184 737 201
-rect 704 176 737 184
-rect 848 201 881 209
-rect 848 184 856 201
-rect 873 184 881 201
-rect 848 176 881 184
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 91 305 108
-rect 272 83 305 91
-rect 416 108 449 116
-rect 416 91 424 108
-rect 441 91 449 108
-rect 416 83 449 91
-rect 560 108 593 116
-rect 560 91 568 108
-rect 585 91 593 108
-rect 560 83 593 91
-rect 704 108 737 116
-rect 704 91 712 108
-rect 729 91 737 108
-rect 704 83 737 91
-rect 848 108 881 116
-rect 848 91 856 108
-rect 873 91 881 108
-rect 848 83 881 91
-rect 137 66 152 83
-rect 281 66 296 83
-rect 425 66 440 83
-rect 569 66 584 83
-rect 713 66 728 83
-rect 857 66 872 83
-rect 137 11 152 24
-rect 281 11 296 24
-rect 425 11 440 24
-rect 569 11 584 24
-rect 713 11 728 24
-rect 857 11 872 24
+rect 273 618 303 644
+rect 561 618 591 644
+rect 849 618 879 644
+rect 1137 618 1167 644
+rect 1425 618 1455 644
+rect 1713 618 1743 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 849 418 879 450
+rect 1137 418 1167 450
+rect 1425 418 1455 450
+rect 1713 418 1743 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 1119 402 1185 418
+rect 1119 368 1135 402
+rect 1169 368 1185 402
+rect 1119 352 1185 368
+rect 1407 402 1473 418
+rect 1407 368 1423 402
+rect 1457 368 1473 402
+rect 1407 352 1473 368
+rect 1695 402 1761 418
+rect 1695 368 1711 402
+rect 1745 368 1761 402
+rect 1695 352 1761 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 1119 215 1185 231
+rect 1119 181 1135 215
+rect 1169 181 1185 215
+rect 1119 165 1185 181
+rect 1407 215 1473 231
+rect 1407 181 1423 215
+rect 1457 181 1473 215
+rect 1407 165 1473 181
+rect 1695 215 1761 231
+rect 1695 181 1711 215
+rect 1745 181 1761 215
+rect 1695 165 1761 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 849 132 879 165
+rect 1137 132 1167 165
+rect 1425 132 1455 165
+rect 1713 132 1743 165
+rect 273 22 303 48
+rect 561 22 591 48
+rect 849 22 879 48
+rect 1137 22 1167 48
+rect 1425 22 1455 48
+rect 1713 22 1743 48
 << polycont >>
-rect 136 184 153 201
-rect 280 184 297 201
-rect 424 184 441 201
-rect 568 184 585 201
-rect 712 184 729 201
-rect 856 184 873 201
-rect 136 91 153 108
-rect 280 91 297 108
-rect 424 91 441 108
-rect 568 91 585 108
-rect 712 91 729 108
-rect 856 91 873 108
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 1135 368 1169 402
+rect 1423 368 1457 402
+rect 1711 368 1745 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+rect 1135 181 1169 215
+rect 1423 181 1457 215
+rect 1711 181 1745 215
 << locali >>
-rect 0 342 1008 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 448 342
-rect 465 325 496 342
-rect 513 325 544 342
-rect 561 325 592 342
-rect 609 325 640 342
-rect 657 325 688 342
-rect 705 325 736 342
-rect 753 325 784 342
-rect 801 325 832 342
-rect 849 325 880 342
-rect 897 325 928 342
-rect 945 325 976 342
-rect 993 325 1008 342
-rect 0 309 1008 325
-rect 176 299 209 309
-rect 176 282 184 299
-rect 201 282 209 299
-rect 752 299 785 309
-rect 176 274 209 282
-rect 752 282 760 299
-rect 777 282 785 299
-rect 752 274 785 282
-rect 56 243 89 251
-rect 56 226 64 243
-rect 81 226 89 243
-rect 464 243 497 251
-rect 464 226 472 243
-rect 489 226 497 243
-rect 56 218 89 226
-rect 466 218 497 226
-rect 128 201 161 209
-rect 128 184 136 201
-rect 153 184 161 201
-rect 128 176 161 184
-rect 272 201 305 209
-rect 272 184 280 201
-rect 297 184 305 201
-rect 272 176 305 184
-rect 416 201 449 209
-rect 416 184 424 201
-rect 441 184 449 201
-rect 416 176 449 184
-rect 128 108 161 116
-rect 128 91 136 108
-rect 153 91 161 108
-rect 128 83 161 91
-rect 272 108 305 116
-rect 272 91 280 108
-rect 297 91 305 108
-rect 272 83 305 91
-rect 416 108 449 116
-rect 416 91 424 108
-rect 441 92 449 108
-rect 441 91 447 92
-rect 416 83 447 91
-rect 472 75 489 218
-rect 568 209 585 226
-rect 712 209 729 266
-rect 896 243 929 251
-rect 896 226 904 243
-rect 921 226 929 243
-rect 898 218 929 226
-rect 560 201 593 209
-rect 560 184 568 201
-rect 585 184 593 201
-rect 560 176 593 184
-rect 704 201 737 209
-rect 704 184 712 201
-rect 729 184 737 201
-rect 704 176 737 184
-rect 848 201 881 209
-rect 848 184 856 201
-rect 873 184 881 201
-rect 848 176 881 184
-rect 712 116 729 176
-rect 560 108 593 116
-rect 560 91 568 108
-rect 585 91 593 108
-rect 560 83 593 91
-rect 704 108 737 116
-rect 704 91 712 108
-rect 729 91 737 108
-rect 704 83 737 91
-rect 848 108 881 116
-rect 848 91 856 108
-rect 873 91 881 108
-rect 848 83 881 91
-rect 56 67 89 75
-rect 56 50 64 67
-rect 81 50 89 67
-rect 464 67 497 75
-rect 56 42 89 50
-rect 176 51 209 59
-rect 176 34 184 51
-rect 201 34 209 51
-rect 464 50 472 67
-rect 489 50 497 67
-rect 898 67 929 75
-rect 898 66 904 67
-rect 464 42 497 50
-rect 752 51 785 59
-rect 176 24 209 34
-rect 752 34 760 51
-rect 777 34 785 51
-rect 896 50 904 66
-rect 921 50 929 67
-rect 896 42 929 50
-rect 752 24 785 34
-rect 0 9 1008 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 448 9
-rect 465 -9 496 9
-rect 513 -9 544 9
-rect 561 -9 592 9
-rect 609 -9 640 9
-rect 657 -9 688 9
-rect 705 -9 736 9
-rect 753 -9 784 9
-rect 801 -9 832 9
-rect 849 -9 880 9
-rect 897 -9 928 9
-rect 945 -9 976 9
-rect 993 -9 1008 9
-rect 0 -24 1008 -9
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1183 683
+rect 1217 649 1279 683
+rect 1313 649 1375 683
+rect 1409 649 1471 683
+rect 1505 649 1567 683
+rect 1601 649 1663 683
+rect 1697 649 1759 683
+rect 1793 649 1855 683
+rect 1889 649 1951 683
+rect 1985 649 2016 683
+rect 31 618 1985 649
+rect 351 598 417 618
+rect 351 564 367 598
+rect 401 564 417 598
+rect 1503 598 1569 618
+rect 351 548 417 564
+rect 1503 564 1519 598
+rect 1553 564 1569 598
+rect 1503 548 1569 564
+rect 111 485 177 501
+rect 111 451 127 485
+rect 161 451 177 485
+rect 927 485 993 501
+rect 927 452 943 485
+rect 111 435 177 451
+rect 931 451 943 452
+rect 977 451 993 485
+rect 931 435 993 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 184 897 215
+rect 881 181 893 184
+rect 831 165 893 181
+rect 943 150 977 435
+rect 1423 418 1457 532
+rect 1791 485 1857 501
+rect 1791 452 1807 485
+rect 1795 451 1807 452
+rect 1841 451 1857 485
+rect 1795 435 1857 451
+rect 1119 402 1185 418
+rect 1119 368 1135 402
+rect 1169 368 1185 402
+rect 1119 352 1185 368
+rect 1407 402 1473 418
+rect 1407 368 1423 402
+rect 1457 368 1473 402
+rect 1407 352 1473 368
+rect 1695 402 1761 418
+rect 1695 368 1711 402
+rect 1745 368 1761 402
+rect 1695 352 1761 368
+rect 1423 231 1457 352
+rect 1119 215 1185 231
+rect 1119 181 1135 215
+rect 1169 181 1185 215
+rect 1119 165 1185 181
+rect 1407 215 1473 231
+rect 1407 181 1423 215
+rect 1457 181 1473 215
+rect 1407 165 1473 181
+rect 1695 215 1761 231
+rect 1695 181 1711 215
+rect 1745 181 1761 215
+rect 1695 165 1761 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 927 134 993 150
+rect 111 84 177 100
+rect 351 102 417 118
+rect 351 68 367 102
+rect 401 68 417 102
+rect 927 100 943 134
+rect 977 100 993 134
+rect 1795 134 1857 150
+rect 1795 131 1807 134
+rect 927 84 993 100
+rect 1503 102 1569 118
+rect 351 48 417 68
+rect 1503 68 1519 102
+rect 1553 68 1569 102
+rect 1791 100 1807 131
+rect 1841 100 1857 134
+rect 1791 84 1857 100
+rect 1503 48 1569 68
+rect 31 17 1985 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1183 17
+rect 1217 -17 1279 17
+rect 1313 -17 1375 17
+rect 1409 -17 1471 17
+rect 1505 -17 1567 17
+rect 1601 -17 1663 17
+rect 1697 -17 1759 17
+rect 1793 -17 1855 17
+rect 1889 -17 1951 17
+rect 1985 -17 2016 17
 << viali >>
-rect 16 325 33 342
-rect 64 325 81 342
-rect 112 325 129 342
-rect 160 325 177 342
-rect 208 325 225 342
-rect 256 325 273 342
-rect 304 325 321 342
-rect 352 325 369 342
-rect 400 325 417 342
-rect 448 325 465 342
-rect 496 325 513 342
-rect 544 325 561 342
-rect 592 325 609 342
-rect 640 325 657 342
-rect 688 325 705 342
-rect 736 325 753 342
-rect 784 325 801 342
-rect 832 325 849 342
-rect 880 325 897 342
-rect 928 325 945 342
-rect 976 325 993 342
-rect 712 266 729 283
-rect 760 282 777 299
-rect 64 226 81 243
-rect 568 226 585 243
-rect 136 184 153 201
-rect 280 184 297 201
-rect 424 184 441 201
-rect 136 91 153 108
-rect 280 91 297 108
-rect 424 91 441 108
-rect 904 226 921 243
-rect 856 184 873 201
-rect 568 91 585 108
-rect 856 91 873 108
-rect 64 50 81 67
-rect 184 34 201 51
-rect 472 50 489 67
-rect 760 34 777 51
-rect 904 50 921 67
-rect 16 -9 33 9
-rect 64 -9 81 9
-rect 112 -9 129 9
-rect 160 -9 177 9
-rect 208 -9 225 9
-rect 256 -9 273 9
-rect 304 -9 321 9
-rect 352 -9 369 9
-rect 400 -9 417 9
-rect 448 -9 465 9
-rect 496 -9 513 9
-rect 544 -9 561 9
-rect 592 -9 609 9
-rect 640 -9 657 9
-rect 688 -9 705 9
-rect 736 -9 753 9
-rect 784 -9 801 9
-rect 832 -9 849 9
-rect 880 -9 897 9
-rect 928 -9 945 9
-rect 976 -9 993 9
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 895 649 929 683
+rect 991 649 1025 683
+rect 1087 649 1121 683
+rect 1183 649 1217 683
+rect 1279 649 1313 683
+rect 1375 649 1409 683
+rect 1471 649 1505 683
+rect 1567 649 1601 683
+rect 1663 649 1697 683
+rect 1759 649 1793 683
+rect 1855 649 1889 683
+rect 1951 649 1985 683
+rect 1423 532 1457 566
+rect 1519 564 1553 598
+rect 127 451 161 485
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+rect 1807 451 1841 485
+rect 1135 368 1169 402
+rect 1711 368 1745 402
+rect 1135 181 1169 215
+rect 1711 181 1745 215
+rect 127 100 161 134
+rect 367 68 401 102
+rect 943 100 977 134
+rect 1519 68 1553 102
+rect 1807 100 1841 134
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
+rect 895 -17 929 17
+rect 991 -17 1025 17
+rect 1087 -17 1121 17
+rect 1183 -17 1217 17
+rect 1279 -17 1313 17
+rect 1375 -17 1409 17
+rect 1471 -17 1505 17
+rect 1567 -17 1601 17
+rect 1663 -17 1697 17
+rect 1759 -17 1793 17
+rect 1855 -17 1889 17
+rect 1951 -17 1985 17
 << metal1 >>
-rect 0 342 1008 357
-rect 0 325 16 342
-rect 33 325 64 342
-rect 81 325 112 342
-rect 129 325 160 342
-rect 177 325 208 342
-rect 225 325 256 342
-rect 273 325 304 342
-rect 321 325 352 342
-rect 369 325 400 342
-rect 417 325 448 342
-rect 465 325 496 342
-rect 513 325 544 342
-rect 561 325 592 342
-rect 609 325 640 342
-rect 657 325 688 342
-rect 705 325 736 342
-rect 753 325 784 342
-rect 801 325 832 342
-rect 849 325 880 342
-rect 897 325 928 342
-rect 945 325 976 342
-rect 993 325 1008 342
-rect 0 309 1008 325
-rect 754 299 783 309
-rect 706 283 735 289
-rect 706 282 712 283
-rect 65 268 712 282
-rect 65 249 79 268
-rect 706 266 712 268
-rect 729 266 735 283
-rect 754 282 760 299
-rect 777 282 783 299
-rect 754 276 783 282
-rect 706 260 735 266
-rect 58 243 87 249
-rect 58 226 64 243
-rect 81 226 87 243
-rect 562 243 591 249
-rect 562 241 568 243
-rect 58 220 87 226
-rect 377 227 568 241
-rect 65 73 79 220
-rect 130 201 159 207
-rect 130 184 136 201
-rect 153 200 159 201
-rect 274 201 303 207
-rect 274 200 280 201
-rect 153 186 280 200
-rect 153 184 159 186
-rect 130 178 159 184
-rect 274 184 280 186
-rect 297 184 303 201
-rect 274 178 303 184
-rect 137 114 151 178
-rect 281 114 295 178
-rect 130 108 159 114
-rect 130 91 136 108
-rect 153 91 159 108
-rect 130 85 159 91
-rect 274 108 303 114
-rect 274 91 280 108
-rect 297 91 303 108
-rect 377 106 391 227
-rect 562 226 568 227
-rect 585 241 591 243
-rect 898 243 927 249
-rect 898 241 904 243
-rect 585 227 904 241
-rect 585 226 591 227
-rect 562 220 591 226
-rect 898 226 904 227
-rect 921 226 927 243
-rect 898 220 927 226
-rect 418 201 447 207
-rect 418 184 424 201
-rect 441 200 447 201
-rect 850 201 879 207
-rect 850 200 856 201
-rect 441 186 856 200
-rect 441 184 447 186
-rect 418 178 447 184
-rect 569 114 583 186
-rect 850 184 856 186
-rect 873 184 879 201
-rect 850 178 879 184
-rect 857 114 871 178
-rect 418 108 447 114
-rect 418 106 424 108
-rect 377 92 424 106
-rect 274 85 303 91
-rect 418 91 424 92
-rect 441 91 447 108
-rect 418 85 447 91
-rect 562 108 591 114
-rect 562 91 568 108
-rect 585 91 591 108
-rect 562 85 591 91
-rect 850 108 879 114
-rect 850 91 856 108
-rect 873 91 879 108
-rect 850 85 879 91
-rect 905 73 919 220
-rect 58 67 87 73
-rect 58 50 64 67
-rect 81 50 87 67
-rect 466 67 495 73
-rect 58 44 87 50
-rect 178 51 207 57
-rect 178 34 184 51
-rect 201 34 207 51
-rect 466 50 472 67
-rect 489 50 495 67
-rect 898 67 927 73
-rect 466 44 495 50
-rect 754 51 783 57
-rect 178 24 207 34
-rect 754 34 760 51
-rect 777 34 783 51
-rect 898 50 904 67
-rect 921 50 927 67
-rect 898 44 927 50
-rect 754 24 783 34
-rect 0 9 1008 24
-rect 0 -9 16 9
-rect 33 -9 64 9
-rect 81 -9 112 9
-rect 129 -9 160 9
-rect 177 -9 208 9
-rect 225 -9 256 9
-rect 273 -9 304 9
-rect 321 -9 352 9
-rect 369 -9 400 9
-rect 417 -9 448 9
-rect 465 -9 496 9
-rect 513 -9 544 9
-rect 561 -9 592 9
-rect 609 -9 640 9
-rect 657 -9 688 9
-rect 705 -9 736 9
-rect 753 -9 784 9
-rect 801 -9 832 9
-rect 849 -9 880 9
-rect 897 -9 928 9
-rect 945 -9 976 9
-rect 993 -9 1008 9
-rect 0 -24 1008 -9
+rect 0 683 2016 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1183 683
+rect 1217 649 1279 683
+rect 1313 649 1375 683
+rect 1409 649 1471 683
+rect 1505 649 1567 683
+rect 1601 649 1663 683
+rect 1697 649 1759 683
+rect 1793 649 1855 683
+rect 1889 649 1951 683
+rect 1985 649 2016 683
+rect 0 618 2016 649
+rect 1507 598 1565 618
+rect 1411 566 1469 578
+rect 1411 563 1423 566
+rect 130 535 1423 563
+rect 130 497 158 535
+rect 1411 532 1423 535
+rect 1457 532 1469 566
+rect 1507 564 1519 598
+rect 1553 564 1565 598
+rect 1507 552 1565 564
+rect 1411 520 1469 532
+rect 115 485 173 497
+rect 115 451 127 485
+rect 161 451 173 485
+rect 1795 485 1853 497
+rect 1795 482 1807 485
+rect 115 439 173 451
+rect 754 454 1807 482
+rect 130 146 158 439
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 368 317 402
+rect 259 356 317 368
+rect 547 402 605 414
+rect 547 368 559 402
+rect 593 368 605 402
+rect 547 356 605 368
+rect 274 227 302 356
+rect 562 227 590 356
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 212 317 215
+rect 547 215 605 227
+rect 547 212 559 215
+rect 305 184 559 212
+rect 305 181 317 184
+rect 259 169 317 181
+rect 547 181 559 184
+rect 593 181 605 215
+rect 754 212 782 454
+rect 1138 414 1166 454
+rect 1795 451 1807 454
+rect 1841 451 1853 485
+rect 1795 439 1853 451
+rect 835 402 893 414
+rect 835 368 847 402
+rect 881 399 893 402
+rect 1123 402 1181 414
+rect 881 371 1070 399
+rect 881 368 893 371
+rect 835 356 893 368
+rect 835 215 893 227
+rect 835 212 847 215
+rect 754 184 847 212
+rect 547 169 605 181
+rect 835 181 847 184
+rect 881 181 893 215
+rect 1042 212 1070 371
+rect 1123 368 1135 402
+rect 1169 368 1181 402
+rect 1123 356 1181 368
+rect 1699 402 1757 414
+rect 1699 368 1711 402
+rect 1745 368 1757 402
+rect 1699 356 1757 368
+rect 1714 227 1742 356
+rect 1123 215 1181 227
+rect 1123 212 1135 215
+rect 1042 184 1135 212
+rect 835 169 893 181
+rect 1123 181 1135 184
+rect 1169 212 1181 215
+rect 1699 215 1757 227
+rect 1699 212 1711 215
+rect 1169 184 1711 212
+rect 1169 181 1181 184
+rect 1123 169 1181 181
+rect 1699 181 1711 184
+rect 1745 181 1757 215
+rect 1699 169 1757 181
+rect 1810 146 1838 439
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 931 134 989 146
+rect 115 88 173 100
+rect 355 102 413 114
+rect 355 68 367 102
+rect 401 68 413 102
+rect 931 100 943 134
+rect 977 100 989 134
+rect 1795 134 1853 146
+rect 931 88 989 100
+rect 1507 102 1565 114
+rect 355 48 413 68
+rect 1507 68 1519 102
+rect 1553 68 1565 102
+rect 1795 100 1807 134
+rect 1841 100 1853 134
+rect 1795 88 1853 100
+rect 1507 48 1565 68
+rect 0 17 2016 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1183 17
+rect 1217 -17 1279 17
+rect 1313 -17 1375 17
+rect 1409 -17 1471 17
+rect 1505 -17 1567 17
+rect 1601 -17 1663 17
+rect 1697 -17 1759 17
+rect 1793 -17 1855 17
+rect 1889 -17 1951 17
+rect 1985 -17 2016 17
+rect 0 -48 2016 -17
 << labels >>
-rlabel locali 0 309 1008 357 0 VDD
+rlabel metal1 0 618 2016 714 0 VDD
 port 1 se
-rlabel metal1 0 309 1008 357 0 VDD
+rlabel metal1 0 618 2016 714 0 VDD
 port 2 se
-rlabel locali 0 -24 1008 24 0 GND
+rlabel metal1 0 -48 2016 48 0 GND
 port 3 se
-rlabel metal1 0 -24 1008 24 0 GND
+rlabel metal1 0 -48 2016 48 0 GND
 port 4 se
-rlabel metal1 466 44 495 73 0 Y
+rlabel metal1 931 88 989 146 0 Y
 port 5 se
-rlabel metal1 130 85 159 114 0 B
+rlabel metal1 259 169 317 184 0 B
 port 6 se
-rlabel metal1 274 85 303 114 0 B
+rlabel metal1 547 169 605 184 0 B
 port 7 se
-rlabel metal1 137 114 151 178 0 B
+rlabel metal1 259 184 605 212 0 B
 port 8 se
-rlabel metal1 281 114 295 178 0 B
+rlabel metal1 259 212 317 227 0 B
 port 9 se
-rlabel metal1 130 178 159 186 0 B
+rlabel metal1 547 212 605 227 0 B
 port 10 se
-rlabel metal1 274 178 303 186 0 B
+rlabel metal1 274 227 302 356 0 B
 port 11 se
-rlabel metal1 130 186 303 200 0 B
+rlabel metal1 562 227 590 356 0 B
 port 12 se
-rlabel metal1 130 200 159 207 0 B
+rlabel metal1 259 356 317 414 0 B
 port 13 se
-rlabel metal1 274 200 303 207 0 B
+rlabel metal1 547 356 605 414 0 B
 port 14 se
-rlabel metal1 562 85 591 114 0 A
+rlabel metal1 1123 169 1181 184 0 A
 port 15 se
-rlabel metal1 850 85 879 114 0 A
+rlabel metal1 1699 169 1757 184 0 A
 port 16 se
-rlabel metal1 857 114 871 178 0 A
+rlabel metal1 1042 184 1757 212 0 A
 port 17 se
-rlabel metal1 418 178 447 186 0 A
+rlabel metal1 1123 212 1181 227 0 A
 port 18 se
-rlabel metal1 569 114 583 186 0 A
+rlabel metal1 1699 212 1757 227 0 A
 port 19 se
-rlabel metal1 850 178 879 186 0 A
+rlabel metal1 1714 227 1742 356 0 A
 port 20 se
-rlabel metal1 418 186 879 200 0 A
+rlabel metal1 835 356 893 371 0 A
 port 21 se
-rlabel metal1 418 200 447 207 0 A
+rlabel metal1 1042 212 1070 371 0 A
 port 22 se
-rlabel metal1 850 200 879 207 0 A
+rlabel metal1 835 371 1070 399 0 A
 port 23 se
+rlabel metal1 835 399 893 414 0 A
+port 24 se
+rlabel metal1 1699 356 1757 414 0 A
+port 25 se
+rlabel locali 0 -17 2016 17 4 GND
+port 3 se
+rlabel locali 31 17 1985 48 4 GND
+port 3 se
+rlabel locali 0 649 2016 683 4 VDD
+port 1 se
+rlabel locali 31 618 1985 649 4 VDD
+port 1 se
 << properties >>
-string FIXED_BBOX 0 0 1008 333
+string FIXED_BBOX 0 0 2016 666
 << end >>
diff --git a/cells/mag/XNOR2X1.mag.beforemagic b/cells/mag/XNOR2X1.mag.beforemagic
new file mode 100644
index 0000000..f5441af
--- /dev/null
+++ b/cells/mag/XNOR2X1.mag.beforemagic
@@ -0,0 +1,582 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1624753981
+<< nwell >>
+rect 0 358 2016 666
+<< nmos >>
+rect 273 48 303 132
+rect 561 48 591 132
+rect 849 48 879 132
+rect 1137 48 1167 132
+rect 1425 48 1455 132
+rect 1713 48 1743 132
+<< pmos >>
+rect 273 450 303 618
+rect 561 450 591 618
+rect 849 450 879 618
+rect 1137 450 1167 618
+rect 1425 450 1455 618
+rect 1713 450 1743 618
+<< ndiff >>
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 132 173 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 102 561 132
+rect 303 68 367 102
+rect 401 68 561 102
+rect 303 48 561 68
+rect 591 48 849 132
+rect 879 100 943 132
+rect 977 132 989 134
+rect 1795 134 1853 146
+rect 1795 132 1807 134
+rect 977 100 1137 132
+rect 879 48 1137 100
+rect 1167 48 1425 132
+rect 1455 102 1713 132
+rect 1455 68 1519 102
+rect 1553 68 1713 102
+rect 1455 48 1713 68
+rect 1743 100 1807 132
+rect 1841 132 1853 134
+rect 1841 100 1901 132
+rect 1743 48 1901 100
+<< pdiff >>
+rect 115 485 273 618
+rect 115 451 127 485
+rect 161 451 273 485
+rect 115 450 273 451
+rect 303 598 561 618
+rect 303 564 367 598
+rect 401 564 561 598
+rect 303 450 561 564
+rect 591 450 849 618
+rect 879 485 1137 618
+rect 879 451 943 485
+rect 977 451 1137 485
+rect 879 450 1137 451
+rect 1167 450 1425 618
+rect 1455 598 1713 618
+rect 1455 564 1519 598
+rect 1553 564 1713 598
+rect 1455 450 1713 564
+rect 1743 485 1901 618
+rect 1743 451 1807 485
+rect 1841 451 1901 485
+rect 1743 450 1901 451
+rect 115 439 173 450
+rect 931 439 989 450
+rect 1795 439 1853 450
+<< ndiffc >>
+rect 127 100 161 134
+rect 367 68 401 102
+rect 943 100 977 134
+rect 1519 68 1553 102
+rect 1807 100 1841 134
+<< pdiffc >>
+rect 127 451 161 485
+rect 367 564 401 598
+rect 943 451 977 485
+rect 1519 564 1553 598
+rect 1807 451 1841 485
+<< poly >>
+rect 273 618 303 644
+rect 561 618 591 644
+rect 849 618 879 644
+rect 1137 618 1167 644
+rect 1425 618 1455 644
+rect 1713 618 1743 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 849 418 879 450
+rect 1137 418 1167 450
+rect 1425 418 1455 450
+rect 1713 418 1743 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 1119 402 1185 418
+rect 1119 368 1135 402
+rect 1169 368 1185 402
+rect 1119 352 1185 368
+rect 1407 402 1473 418
+rect 1407 368 1423 402
+rect 1457 368 1473 402
+rect 1407 352 1473 368
+rect 1695 402 1761 418
+rect 1695 368 1711 402
+rect 1745 368 1761 402
+rect 1695 352 1761 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 1119 215 1185 231
+rect 1119 181 1135 215
+rect 1169 181 1185 215
+rect 1119 165 1185 181
+rect 1407 215 1473 231
+rect 1407 181 1423 215
+rect 1457 181 1473 215
+rect 1407 165 1473 181
+rect 1695 215 1761 231
+rect 1695 181 1711 215
+rect 1745 181 1761 215
+rect 1695 165 1761 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 849 132 879 165
+rect 1137 132 1167 165
+rect 1425 132 1455 165
+rect 1713 132 1743 165
+rect 273 22 303 48
+rect 561 22 591 48
+rect 849 22 879 48
+rect 1137 22 1167 48
+rect 1425 22 1455 48
+rect 1713 22 1743 48
+<< polycont >>
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 1135 368 1169 402
+rect 1423 368 1457 402
+rect 1711 368 1745 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+rect 1135 181 1169 215
+rect 1423 181 1457 215
+rect 1711 181 1745 215
+<< locali >>
+rect 0 683 2016 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1183 683
+rect 1217 649 1279 683
+rect 1313 649 1375 683
+rect 1409 649 1471 683
+rect 1505 649 1567 683
+rect 1601 649 1663 683
+rect 1697 649 1759 683
+rect 1793 649 1855 683
+rect 1889 649 1951 683
+rect 1985 649 2016 683
+rect 0 618 2016 649
+rect 351 598 417 618
+rect 351 564 367 598
+rect 401 564 417 598
+rect 1503 598 1569 618
+rect 351 548 417 564
+rect 1503 564 1519 598
+rect 1553 564 1569 598
+rect 1503 548 1569 564
+rect 111 485 177 501
+rect 111 451 127 485
+rect 161 451 177 485
+rect 927 485 993 501
+rect 927 452 943 485
+rect 111 435 177 451
+rect 931 451 943 452
+rect 977 451 993 485
+rect 931 435 993 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 184 897 215
+rect 881 181 893 184
+rect 831 165 893 181
+rect 943 150 977 435
+rect 1423 418 1457 532
+rect 1791 485 1857 501
+rect 1791 452 1807 485
+rect 1795 451 1807 452
+rect 1841 451 1857 485
+rect 1795 435 1857 451
+rect 1119 402 1185 418
+rect 1119 368 1135 402
+rect 1169 368 1185 402
+rect 1119 352 1185 368
+rect 1407 402 1473 418
+rect 1407 368 1423 402
+rect 1457 368 1473 402
+rect 1407 352 1473 368
+rect 1695 402 1761 418
+rect 1695 368 1711 402
+rect 1745 368 1761 402
+rect 1695 352 1761 368
+rect 1423 231 1457 352
+rect 1119 215 1185 231
+rect 1119 181 1135 215
+rect 1169 181 1185 215
+rect 1119 165 1185 181
+rect 1407 215 1473 231
+rect 1407 181 1423 215
+rect 1457 181 1473 215
+rect 1407 165 1473 181
+rect 1695 215 1761 231
+rect 1695 181 1711 215
+rect 1745 181 1761 215
+rect 1695 165 1761 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 927 134 993 150
+rect 111 84 177 100
+rect 351 102 417 118
+rect 351 68 367 102
+rect 401 68 417 102
+rect 927 100 943 134
+rect 977 100 993 134
+rect 1795 134 1857 150
+rect 1795 131 1807 134
+rect 927 84 993 100
+rect 1503 102 1569 118
+rect 351 48 417 68
+rect 1503 68 1519 102
+rect 1553 68 1569 102
+rect 1791 100 1807 131
+rect 1841 100 1857 134
+rect 1791 84 1857 100
+rect 1503 48 1569 68
+rect 0 17 2016 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1183 17
+rect 1217 -17 1279 17
+rect 1313 -17 1375 17
+rect 1409 -17 1471 17
+rect 1505 -17 1567 17
+rect 1601 -17 1663 17
+rect 1697 -17 1759 17
+rect 1793 -17 1855 17
+rect 1889 -17 1951 17
+rect 1985 -17 2016 17
+rect 0 -48 2016 -17
+<< viali >>
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 895 649 929 683
+rect 991 649 1025 683
+rect 1087 649 1121 683
+rect 1183 649 1217 683
+rect 1279 649 1313 683
+rect 1375 649 1409 683
+rect 1471 649 1505 683
+rect 1567 649 1601 683
+rect 1663 649 1697 683
+rect 1759 649 1793 683
+rect 1855 649 1889 683
+rect 1951 649 1985 683
+rect 1423 532 1457 566
+rect 1519 564 1553 598
+rect 127 451 161 485
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+rect 1807 451 1841 485
+rect 1135 368 1169 402
+rect 1711 368 1745 402
+rect 1135 181 1169 215
+rect 1711 181 1745 215
+rect 127 100 161 134
+rect 367 68 401 102
+rect 943 100 977 134
+rect 1519 68 1553 102
+rect 1807 100 1841 134
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
+rect 895 -17 929 17
+rect 991 -17 1025 17
+rect 1087 -17 1121 17
+rect 1183 -17 1217 17
+rect 1279 -17 1313 17
+rect 1375 -17 1409 17
+rect 1471 -17 1505 17
+rect 1567 -17 1601 17
+rect 1663 -17 1697 17
+rect 1759 -17 1793 17
+rect 1855 -17 1889 17
+rect 1951 -17 1985 17
+<< metal1 >>
+rect 0 683 2016 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1183 683
+rect 1217 649 1279 683
+rect 1313 649 1375 683
+rect 1409 649 1471 683
+rect 1505 649 1567 683
+rect 1601 649 1663 683
+rect 1697 649 1759 683
+rect 1793 649 1855 683
+rect 1889 649 1951 683
+rect 1985 649 2016 683
+rect 0 618 2016 649
+rect 1507 598 1565 618
+rect 1411 566 1469 578
+rect 1411 563 1423 566
+rect 130 535 1423 563
+rect 130 497 158 535
+rect 1411 532 1423 535
+rect 1457 532 1469 566
+rect 1507 564 1519 598
+rect 1553 564 1565 598
+rect 1507 552 1565 564
+rect 1411 520 1469 532
+rect 115 485 173 497
+rect 115 451 127 485
+rect 161 451 173 485
+rect 1795 485 1853 497
+rect 1795 482 1807 485
+rect 115 439 173 451
+rect 754 454 1807 482
+rect 130 146 158 439
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 368 317 402
+rect 259 356 317 368
+rect 547 402 605 414
+rect 547 368 559 402
+rect 593 368 605 402
+rect 547 356 605 368
+rect 274 227 302 356
+rect 562 227 590 356
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 212 317 215
+rect 547 215 605 227
+rect 547 212 559 215
+rect 305 184 559 212
+rect 305 181 317 184
+rect 259 169 317 181
+rect 547 181 559 184
+rect 593 181 605 215
+rect 754 212 782 454
+rect 1138 414 1166 454
+rect 1795 451 1807 454
+rect 1841 451 1853 485
+rect 1795 439 1853 451
+rect 835 402 893 414
+rect 835 368 847 402
+rect 881 399 893 402
+rect 1123 402 1181 414
+rect 881 371 1070 399
+rect 881 368 893 371
+rect 835 356 893 368
+rect 835 215 893 227
+rect 835 212 847 215
+rect 754 184 847 212
+rect 547 169 605 181
+rect 835 181 847 184
+rect 881 181 893 215
+rect 1042 212 1070 371
+rect 1123 368 1135 402
+rect 1169 368 1181 402
+rect 1123 356 1181 368
+rect 1699 402 1757 414
+rect 1699 368 1711 402
+rect 1745 368 1757 402
+rect 1699 356 1757 368
+rect 1714 227 1742 356
+rect 1123 215 1181 227
+rect 1123 212 1135 215
+rect 1042 184 1135 212
+rect 835 169 893 181
+rect 1123 181 1135 184
+rect 1169 212 1181 215
+rect 1699 215 1757 227
+rect 1699 212 1711 215
+rect 1169 184 1711 212
+rect 1169 181 1181 184
+rect 1123 169 1181 181
+rect 1699 181 1711 184
+rect 1745 181 1757 215
+rect 1699 169 1757 181
+rect 1810 146 1838 439
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 931 134 989 146
+rect 115 88 173 100
+rect 355 102 413 114
+rect 355 68 367 102
+rect 401 68 413 102
+rect 931 100 943 134
+rect 977 100 989 134
+rect 1795 134 1853 146
+rect 931 88 989 100
+rect 1507 102 1565 114
+rect 355 48 413 68
+rect 1507 68 1519 102
+rect 1553 68 1565 102
+rect 1795 100 1807 134
+rect 1841 100 1853 134
+rect 1795 88 1853 100
+rect 1507 48 1565 68
+rect 0 17 2016 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1183 17
+rect 1217 -17 1279 17
+rect 1313 -17 1375 17
+rect 1409 -17 1471 17
+rect 1505 -17 1567 17
+rect 1601 -17 1663 17
+rect 1697 -17 1759 17
+rect 1793 -17 1855 17
+rect 1889 -17 1951 17
+rect 1985 -17 2016 17
+rect 0 -48 2016 -17
+<< labels >>
+rlabel locali 0 618 2016 714 0 VDD
+port 1 se
+rlabel metal1 0 618 2016 714 0 VDD
+port 2 se
+rlabel locali 0 -48 2016 48 0 GND
+port 3 se
+rlabel metal1 0 -48 2016 48 0 GND
+port 4 se
+rlabel metal1 931 88 989 146 0 Y
+port 5 se
+rlabel metal1 259 169 317 184 0 B
+port 6 se
+rlabel metal1 547 169 605 184 0 B
+port 7 se
+rlabel metal1 259 184 605 212 0 B
+port 8 se
+rlabel metal1 259 212 317 227 0 B
+port 9 se
+rlabel metal1 547 212 605 227 0 B
+port 10 se
+rlabel metal1 274 227 302 356 0 B
+port 11 se
+rlabel metal1 562 227 590 356 0 B
+port 12 se
+rlabel metal1 259 356 317 414 0 B
+port 13 se
+rlabel metal1 547 356 605 414 0 B
+port 14 se
+rlabel metal1 1123 169 1181 184 0 A
+port 15 se
+rlabel metal1 1699 169 1757 184 0 A
+port 16 se
+rlabel metal1 1042 184 1757 212 0 A
+port 17 se
+rlabel metal1 1123 212 1181 227 0 A
+port 18 se
+rlabel metal1 1699 212 1757 227 0 A
+port 19 se
+rlabel metal1 1714 227 1742 356 0 A
+port 20 se
+rlabel metal1 835 356 893 371 0 A
+port 21 se
+rlabel metal1 1042 212 1070 371 0 A
+port 22 se
+rlabel metal1 835 371 1070 399 0 A
+port 23 se
+rlabel metal1 835 399 893 414 0 A
+port 24 se
+rlabel metal1 1699 356 1757 414 0 A
+port 25 se
+<< properties >>
+string FIXED_BBOX 0 0 2016 666
+<< end >>
diff --git a/cells/mag/XOR2X1.mag b/cells/mag/XOR2X1.mag
new file mode 100644
index 0000000..2e3427f
--- /dev/null
+++ b/cells/mag/XOR2X1.mag
@@ -0,0 +1,577 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1624887593
+<< checkpaint >>
+rect -1260 -1374 11260 2038
+<< nwell >>
+rect 0 358 2016 666
+<< nmos >>
+rect 273 48 303 132
+rect 561 48 591 132
+rect 849 48 879 132
+rect 1137 48 1167 132
+rect 1425 48 1455 132
+rect 1713 48 1743 132
+<< pmos >>
+rect 273 450 303 618
+rect 561 450 591 618
+rect 849 450 879 618
+rect 1137 450 1167 618
+rect 1425 450 1455 618
+rect 1713 450 1743 618
+<< ndiff >>
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 132 173 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 102 561 132
+rect 303 68 367 102
+rect 401 68 561 102
+rect 303 48 561 68
+rect 591 48 849 132
+rect 879 100 943 132
+rect 977 132 989 134
+rect 1795 134 1853 146
+rect 1795 132 1807 134
+rect 977 100 1137 132
+rect 879 48 1137 100
+rect 1167 48 1425 132
+rect 1455 102 1713 132
+rect 1455 68 1519 102
+rect 1553 68 1713 102
+rect 1455 48 1713 68
+rect 1743 100 1807 132
+rect 1841 132 1853 134
+rect 1841 100 1901 132
+rect 1743 48 1901 100
+<< pdiff >>
+rect 115 485 273 618
+rect 115 451 127 485
+rect 161 451 273 485
+rect 115 450 273 451
+rect 303 598 561 618
+rect 303 564 367 598
+rect 401 564 561 598
+rect 303 450 561 564
+rect 591 450 849 618
+rect 879 485 1137 618
+rect 879 451 943 485
+rect 977 451 1137 485
+rect 879 450 1137 451
+rect 1167 450 1425 618
+rect 1455 598 1713 618
+rect 1455 564 1519 598
+rect 1553 564 1713 598
+rect 1455 450 1713 564
+rect 1743 485 1901 618
+rect 1743 451 1807 485
+rect 1841 451 1901 485
+rect 1743 450 1901 451
+rect 115 439 173 450
+rect 931 439 989 450
+rect 1795 439 1853 450
+<< ndiffc >>
+rect 127 100 161 134
+rect 367 68 401 102
+rect 943 100 977 134
+rect 1519 68 1553 102
+rect 1807 100 1841 134
+<< pdiffc >>
+rect 127 451 161 485
+rect 367 564 401 598
+rect 943 451 977 485
+rect 1519 564 1553 598
+rect 1807 451 1841 485
+<< poly >>
+rect 273 618 303 644
+rect 561 618 591 644
+rect 849 618 879 644
+rect 1137 618 1167 644
+rect 1425 618 1455 644
+rect 1713 618 1743 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 849 418 879 450
+rect 1137 418 1167 450
+rect 1425 418 1455 450
+rect 1713 418 1743 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 1119 402 1185 418
+rect 1119 368 1135 402
+rect 1169 368 1185 402
+rect 1119 352 1185 368
+rect 1407 402 1473 418
+rect 1407 368 1423 402
+rect 1457 368 1473 402
+rect 1407 352 1473 368
+rect 1695 402 1761 418
+rect 1695 368 1711 402
+rect 1745 368 1761 402
+rect 1695 352 1761 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 1119 215 1185 231
+rect 1119 181 1135 215
+rect 1169 181 1185 215
+rect 1119 165 1185 181
+rect 1407 215 1473 231
+rect 1407 181 1423 215
+rect 1457 181 1473 215
+rect 1407 165 1473 181
+rect 1695 215 1761 231
+rect 1695 181 1711 215
+rect 1745 181 1761 215
+rect 1695 165 1761 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 849 132 879 165
+rect 1137 132 1167 165
+rect 1425 132 1455 165
+rect 1713 132 1743 165
+rect 273 22 303 48
+rect 561 22 591 48
+rect 849 22 879 48
+rect 1137 22 1167 48
+rect 1425 22 1455 48
+rect 1713 22 1743 48
+<< polycont >>
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 1135 368 1169 402
+rect 1423 368 1457 402
+rect 1711 368 1745 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+rect 1135 181 1169 215
+rect 1423 181 1457 215
+rect 1711 181 1745 215
+<< locali >>
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1183 683
+rect 1217 649 1279 683
+rect 1313 649 1375 683
+rect 1409 649 1471 683
+rect 1505 649 1567 683
+rect 1601 649 1663 683
+rect 1697 649 1759 683
+rect 1793 649 1855 683
+rect 1889 649 1951 683
+rect 1985 649 2016 683
+rect 31 618 1985 649
+rect 351 598 417 618
+rect 351 564 367 598
+rect 401 564 417 598
+rect 1503 598 1569 618
+rect 351 548 417 564
+rect 1503 564 1519 598
+rect 1553 564 1569 598
+rect 1503 548 1569 564
+rect 111 485 177 501
+rect 111 451 127 485
+rect 161 451 177 485
+rect 111 435 177 451
+rect 559 418 593 532
+rect 927 485 993 501
+rect 927 452 943 485
+rect 847 418 881 451
+rect 931 451 943 452
+rect 977 451 993 485
+rect 1791 485 1857 501
+rect 1791 452 1807 485
+rect 931 435 993 451
+rect 1795 451 1807 452
+rect 1841 451 1857 485
+rect 1795 435 1857 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 559 323 593 352
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 184 897 215
+rect 881 181 893 184
+rect 831 165 893 181
+rect 943 150 977 435
+rect 1119 402 1185 418
+rect 1119 368 1135 402
+rect 1169 368 1185 402
+rect 1119 352 1185 368
+rect 1407 402 1473 418
+rect 1407 368 1423 402
+rect 1457 368 1473 402
+rect 1407 352 1473 368
+rect 1695 402 1761 418
+rect 1695 368 1711 402
+rect 1745 368 1761 402
+rect 1695 352 1761 368
+rect 1711 231 1745 352
+rect 1119 215 1185 231
+rect 1119 181 1135 215
+rect 1169 181 1185 215
+rect 1119 165 1185 181
+rect 1407 215 1473 231
+rect 1407 181 1423 215
+rect 1457 181 1473 215
+rect 1407 165 1473 181
+rect 1695 215 1761 231
+rect 1695 181 1711 215
+rect 1745 181 1761 215
+rect 1695 165 1761 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 927 134 993 150
+rect 111 84 177 100
+rect 351 102 417 118
+rect 351 68 367 102
+rect 401 68 417 102
+rect 927 100 943 134
+rect 977 100 993 134
+rect 1795 134 1857 150
+rect 1795 131 1807 134
+rect 927 84 993 100
+rect 1503 102 1569 118
+rect 351 48 417 68
+rect 1503 68 1519 102
+rect 1553 68 1569 102
+rect 1791 100 1807 131
+rect 1841 100 1857 134
+rect 1791 84 1857 100
+rect 1503 48 1569 68
+rect 31 17 1985 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1183 17
+rect 1217 -17 1279 17
+rect 1313 -17 1375 17
+rect 1409 -17 1471 17
+rect 1505 -17 1567 17
+rect 1601 -17 1663 17
+rect 1697 -17 1759 17
+rect 1793 -17 1855 17
+rect 1889 -17 1951 17
+rect 1985 -17 2016 17
+<< viali >>
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 895 649 929 683
+rect 991 649 1025 683
+rect 1087 649 1121 683
+rect 1183 649 1217 683
+rect 1279 649 1313 683
+rect 1375 649 1409 683
+rect 1471 649 1505 683
+rect 1567 649 1601 683
+rect 1663 649 1697 683
+rect 1759 649 1793 683
+rect 1855 649 1889 683
+rect 1951 649 1985 683
+rect 367 564 401 598
+rect 559 532 593 566
+rect 127 451 161 485
+rect 847 451 881 485
+rect 1807 451 1841 485
+rect 271 368 305 402
+rect 559 289 593 323
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+rect 1135 368 1169 402
+rect 1423 368 1457 402
+rect 1711 368 1745 402
+rect 1135 181 1169 215
+rect 1423 181 1457 215
+rect 127 100 161 134
+rect 367 68 401 102
+rect 943 100 977 134
+rect 1519 68 1553 102
+rect 1807 100 1841 134
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
+rect 895 -17 929 17
+rect 991 -17 1025 17
+rect 1087 -17 1121 17
+rect 1183 -17 1217 17
+rect 1279 -17 1313 17
+rect 1375 -17 1409 17
+rect 1471 -17 1505 17
+rect 1567 -17 1601 17
+rect 1663 -17 1697 17
+rect 1759 -17 1793 17
+rect 1855 -17 1889 17
+rect 1951 -17 1985 17
+<< metal1 >>
+rect 0 683 2016 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1183 683
+rect 1217 649 1279 683
+rect 1313 649 1375 683
+rect 1409 649 1471 683
+rect 1505 649 1567 683
+rect 1601 649 1663 683
+rect 1697 649 1759 683
+rect 1793 649 1855 683
+rect 1889 649 1951 683
+rect 1985 649 2016 683
+rect 0 618 2016 649
+rect 355 598 413 618
+rect 355 564 367 598
+rect 401 564 413 598
+rect 355 552 413 564
+rect 547 566 605 578
+rect 547 532 559 566
+rect 593 563 605 566
+rect 593 535 1742 563
+rect 593 532 605 535
+rect 547 520 605 532
+rect 115 485 173 497
+rect 115 451 127 485
+rect 161 482 173 485
+rect 835 485 893 497
+rect 835 482 847 485
+rect 161 454 847 482
+rect 161 451 173 454
+rect 115 439 173 451
+rect 835 451 847 454
+rect 881 482 893 485
+rect 881 454 1262 482
+rect 881 451 893 454
+rect 835 439 893 451
+rect 130 146 158 439
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 399 317 402
+rect 1123 402 1181 414
+rect 1123 399 1135 402
+rect 305 371 1135 399
+rect 305 368 317 371
+rect 259 356 317 368
+rect 274 227 302 356
+rect 547 323 605 335
+rect 547 289 559 323
+rect 593 289 605 323
+rect 547 277 605 289
+rect 562 227 590 277
+rect 850 227 878 371
+rect 1123 368 1135 371
+rect 1169 368 1181 402
+rect 1123 356 1181 368
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 181 317 215
+rect 259 169 317 181
+rect 547 215 605 227
+rect 547 181 559 215
+rect 593 181 605 215
+rect 547 169 605 181
+rect 835 215 893 227
+rect 835 181 847 215
+rect 881 181 893 215
+rect 835 169 893 181
+rect 1123 215 1181 227
+rect 1123 181 1135 215
+rect 1169 212 1181 215
+rect 1234 212 1262 454
+rect 1714 414 1742 535
+rect 1795 485 1853 497
+rect 1795 451 1807 485
+rect 1841 451 1853 485
+rect 1795 439 1853 451
+rect 1411 402 1469 414
+rect 1411 368 1423 402
+rect 1457 368 1469 402
+rect 1411 356 1469 368
+rect 1699 402 1757 414
+rect 1699 368 1711 402
+rect 1745 368 1757 402
+rect 1699 356 1757 368
+rect 1426 227 1454 356
+rect 1169 184 1262 212
+rect 1411 215 1469 227
+rect 1169 181 1181 184
+rect 1123 169 1181 181
+rect 1411 181 1423 215
+rect 1457 212 1469 215
+rect 1810 212 1838 439
+rect 1457 184 1838 212
+rect 1457 181 1469 184
+rect 1411 169 1469 181
+rect 1810 146 1838 184
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 931 134 989 146
+rect 115 88 173 100
+rect 355 102 413 114
+rect 355 68 367 102
+rect 401 68 413 102
+rect 931 100 943 134
+rect 977 100 989 134
+rect 1795 134 1853 146
+rect 931 88 989 100
+rect 1507 102 1565 114
+rect 355 48 413 68
+rect 1507 68 1519 102
+rect 1553 68 1565 102
+rect 1795 100 1807 134
+rect 1841 100 1853 134
+rect 1795 88 1853 100
+rect 1507 48 1565 68
+rect 0 17 2016 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1183 17
+rect 1217 -17 1279 17
+rect 1313 -17 1375 17
+rect 1409 -17 1471 17
+rect 1505 -17 1567 17
+rect 1601 -17 1663 17
+rect 1697 -17 1759 17
+rect 1793 -17 1855 17
+rect 1889 -17 1951 17
+rect 1985 -17 2016 17
+rect 0 -48 2016 -17
+<< labels >>
+rlabel metal1 0 618 2016 714 0 VDD
+port 1 se
+rlabel metal1 0 618 2016 714 0 VDD
+port 2 se
+rlabel metal1 0 -48 2016 48 0 GND
+port 4 se
+rlabel metal1 931 88 989 146 0 Y
+port 5 se
+rlabel metal1 259 169 317 227 0 A
+port 6 se
+rlabel metal1 835 169 893 227 0 A
+port 7 se
+rlabel metal1 274 227 302 356 0 A
+port 8 se
+rlabel metal1 259 356 317 371 0 A
+port 9 se
+rlabel metal1 850 227 878 371 0 A
+port 10 se
+rlabel metal1 1123 356 1181 371 0 A
+port 11 se
+rlabel metal1 259 371 1181 399 0 A
+port 12 se
+rlabel metal1 259 399 317 414 0 A
+port 13 se
+rlabel metal1 1123 399 1181 414 0 A
+port 14 se
+rlabel metal1 547 169 605 227 0 B
+port 15 se
+rlabel metal1 562 227 590 277 0 B
+port 16 se
+rlabel metal1 547 277 605 335 0 B
+port 17 se
+rlabel locali 0 -17 2016 17 4 GND
+port 4 se
+rlabel locali 31 17 1985 48 4 GND
+port 4 se
+rlabel locali 0 649 2016 683 4 VDD
+port 1 se
+rlabel locali 31 618 1985 649 4 VDD
+port 1 se
+<< properties >>
+string FIXED_BBOX 0 0 2016 666
+<< end >>
diff --git a/cells/mag/XOR2X1.mag.beforemagic b/cells/mag/XOR2X1.mag.beforemagic
new file mode 100644
index 0000000..5a5a4f8
--- /dev/null
+++ b/cells/mag/XOR2X1.mag.beforemagic
@@ -0,0 +1,571 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1624754072
+<< nwell >>
+rect 0 358 2016 666
+<< nmos >>
+rect 273 48 303 132
+rect 561 48 591 132
+rect 849 48 879 132
+rect 1137 48 1167 132
+rect 1425 48 1455 132
+rect 1713 48 1743 132
+<< pmos >>
+rect 273 450 303 618
+rect 561 450 591 618
+rect 849 450 879 618
+rect 1137 450 1167 618
+rect 1425 450 1455 618
+rect 1713 450 1743 618
+<< ndiff >>
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 132 173 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 102 561 132
+rect 303 68 367 102
+rect 401 68 561 102
+rect 303 48 561 68
+rect 591 48 849 132
+rect 879 100 943 132
+rect 977 132 989 134
+rect 1795 134 1853 146
+rect 1795 132 1807 134
+rect 977 100 1137 132
+rect 879 48 1137 100
+rect 1167 48 1425 132
+rect 1455 102 1713 132
+rect 1455 68 1519 102
+rect 1553 68 1713 102
+rect 1455 48 1713 68
+rect 1743 100 1807 132
+rect 1841 132 1853 134
+rect 1841 100 1901 132
+rect 1743 48 1901 100
+<< pdiff >>
+rect 115 485 273 618
+rect 115 451 127 485
+rect 161 451 273 485
+rect 115 450 273 451
+rect 303 598 561 618
+rect 303 564 367 598
+rect 401 564 561 598
+rect 303 450 561 564
+rect 591 450 849 618
+rect 879 485 1137 618
+rect 879 451 943 485
+rect 977 451 1137 485
+rect 879 450 1137 451
+rect 1167 450 1425 618
+rect 1455 598 1713 618
+rect 1455 564 1519 598
+rect 1553 564 1713 598
+rect 1455 450 1713 564
+rect 1743 485 1901 618
+rect 1743 451 1807 485
+rect 1841 451 1901 485
+rect 1743 450 1901 451
+rect 115 439 173 450
+rect 931 439 989 450
+rect 1795 439 1853 450
+<< ndiffc >>
+rect 127 100 161 134
+rect 367 68 401 102
+rect 943 100 977 134
+rect 1519 68 1553 102
+rect 1807 100 1841 134
+<< pdiffc >>
+rect 127 451 161 485
+rect 367 564 401 598
+rect 943 451 977 485
+rect 1519 564 1553 598
+rect 1807 451 1841 485
+<< poly >>
+rect 273 618 303 644
+rect 561 618 591 644
+rect 849 618 879 644
+rect 1137 618 1167 644
+rect 1425 618 1455 644
+rect 1713 618 1743 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 849 418 879 450
+rect 1137 418 1167 450
+rect 1425 418 1455 450
+rect 1713 418 1743 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 1119 402 1185 418
+rect 1119 368 1135 402
+rect 1169 368 1185 402
+rect 1119 352 1185 368
+rect 1407 402 1473 418
+rect 1407 368 1423 402
+rect 1457 368 1473 402
+rect 1407 352 1473 368
+rect 1695 402 1761 418
+rect 1695 368 1711 402
+rect 1745 368 1761 402
+rect 1695 352 1761 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 181 897 215
+rect 831 165 897 181
+rect 1119 215 1185 231
+rect 1119 181 1135 215
+rect 1169 181 1185 215
+rect 1119 165 1185 181
+rect 1407 215 1473 231
+rect 1407 181 1423 215
+rect 1457 181 1473 215
+rect 1407 165 1473 181
+rect 1695 215 1761 231
+rect 1695 181 1711 215
+rect 1745 181 1761 215
+rect 1695 165 1761 181
+rect 273 132 303 165
+rect 561 132 591 165
+rect 849 132 879 165
+rect 1137 132 1167 165
+rect 1425 132 1455 165
+rect 1713 132 1743 165
+rect 273 22 303 48
+rect 561 22 591 48
+rect 849 22 879 48
+rect 1137 22 1167 48
+rect 1425 22 1455 48
+rect 1713 22 1743 48
+<< polycont >>
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 1135 368 1169 402
+rect 1423 368 1457 402
+rect 1711 368 1745 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+rect 1135 181 1169 215
+rect 1423 181 1457 215
+rect 1711 181 1745 215
+<< locali >>
+rect 0 683 2016 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1183 683
+rect 1217 649 1279 683
+rect 1313 649 1375 683
+rect 1409 649 1471 683
+rect 1505 649 1567 683
+rect 1601 649 1663 683
+rect 1697 649 1759 683
+rect 1793 649 1855 683
+rect 1889 649 1951 683
+rect 1985 649 2016 683
+rect 0 618 2016 649
+rect 351 598 417 618
+rect 351 564 367 598
+rect 401 564 417 598
+rect 1503 598 1569 618
+rect 351 548 417 564
+rect 1503 564 1519 598
+rect 1553 564 1569 598
+rect 1503 548 1569 564
+rect 111 485 177 501
+rect 111 451 127 485
+rect 161 451 177 485
+rect 111 435 177 451
+rect 559 418 593 532
+rect 927 485 993 501
+rect 927 452 943 485
+rect 847 418 881 451
+rect 931 451 943 452
+rect 977 451 993 485
+rect 1791 485 1857 501
+rect 1791 452 1807 485
+rect 931 435 993 451
+rect 1795 451 1807 452
+rect 1841 451 1857 485
+rect 1795 435 1857 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 543 402 609 418
+rect 543 368 559 402
+rect 593 368 609 402
+rect 543 352 609 368
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+rect 559 323 593 352
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 181
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 831 215 897 231
+rect 831 181 847 215
+rect 881 184 897 215
+rect 881 181 893 184
+rect 831 165 893 181
+rect 943 150 977 435
+rect 1119 402 1185 418
+rect 1119 368 1135 402
+rect 1169 368 1185 402
+rect 1119 352 1185 368
+rect 1407 402 1473 418
+rect 1407 368 1423 402
+rect 1457 368 1473 402
+rect 1407 352 1473 368
+rect 1695 402 1761 418
+rect 1695 368 1711 402
+rect 1745 368 1761 402
+rect 1695 352 1761 368
+rect 1711 231 1745 352
+rect 1119 215 1185 231
+rect 1119 181 1135 215
+rect 1169 181 1185 215
+rect 1119 165 1185 181
+rect 1407 215 1473 231
+rect 1407 181 1423 215
+rect 1457 181 1473 215
+rect 1407 165 1473 181
+rect 1695 215 1761 231
+rect 1695 181 1711 215
+rect 1745 181 1761 215
+rect 1695 165 1761 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 927 134 993 150
+rect 111 84 177 100
+rect 351 102 417 118
+rect 351 68 367 102
+rect 401 68 417 102
+rect 927 100 943 134
+rect 977 100 993 134
+rect 1795 134 1857 150
+rect 1795 131 1807 134
+rect 927 84 993 100
+rect 1503 102 1569 118
+rect 351 48 417 68
+rect 1503 68 1519 102
+rect 1553 68 1569 102
+rect 1791 100 1807 131
+rect 1841 100 1857 134
+rect 1791 84 1857 100
+rect 1503 48 1569 68
+rect 0 17 2016 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1183 17
+rect 1217 -17 1279 17
+rect 1313 -17 1375 17
+rect 1409 -17 1471 17
+rect 1505 -17 1567 17
+rect 1601 -17 1663 17
+rect 1697 -17 1759 17
+rect 1793 -17 1855 17
+rect 1889 -17 1951 17
+rect 1985 -17 2016 17
+rect 0 -48 2016 -17
+<< viali >>
+rect 31 649 65 683
+rect 127 649 161 683
+rect 223 649 257 683
+rect 319 649 353 683
+rect 415 649 449 683
+rect 511 649 545 683
+rect 607 649 641 683
+rect 703 649 737 683
+rect 799 649 833 683
+rect 895 649 929 683
+rect 991 649 1025 683
+rect 1087 649 1121 683
+rect 1183 649 1217 683
+rect 1279 649 1313 683
+rect 1375 649 1409 683
+rect 1471 649 1505 683
+rect 1567 649 1601 683
+rect 1663 649 1697 683
+rect 1759 649 1793 683
+rect 1855 649 1889 683
+rect 1951 649 1985 683
+rect 367 564 401 598
+rect 559 532 593 566
+rect 127 451 161 485
+rect 847 451 881 485
+rect 1807 451 1841 485
+rect 271 368 305 402
+rect 559 289 593 323
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+rect 1135 368 1169 402
+rect 1423 368 1457 402
+rect 1711 368 1745 402
+rect 1135 181 1169 215
+rect 1423 181 1457 215
+rect 127 100 161 134
+rect 367 68 401 102
+rect 943 100 977 134
+rect 1519 68 1553 102
+rect 1807 100 1841 134
+rect 31 -17 65 17
+rect 127 -17 161 17
+rect 223 -17 257 17
+rect 319 -17 353 17
+rect 415 -17 449 17
+rect 511 -17 545 17
+rect 607 -17 641 17
+rect 703 -17 737 17
+rect 799 -17 833 17
+rect 895 -17 929 17
+rect 991 -17 1025 17
+rect 1087 -17 1121 17
+rect 1183 -17 1217 17
+rect 1279 -17 1313 17
+rect 1375 -17 1409 17
+rect 1471 -17 1505 17
+rect 1567 -17 1601 17
+rect 1663 -17 1697 17
+rect 1759 -17 1793 17
+rect 1855 -17 1889 17
+rect 1951 -17 1985 17
+<< metal1 >>
+rect 0 683 2016 714
+rect 0 649 31 683
+rect 65 649 127 683
+rect 161 649 223 683
+rect 257 649 319 683
+rect 353 649 415 683
+rect 449 649 511 683
+rect 545 649 607 683
+rect 641 649 703 683
+rect 737 649 799 683
+rect 833 649 895 683
+rect 929 649 991 683
+rect 1025 649 1087 683
+rect 1121 649 1183 683
+rect 1217 649 1279 683
+rect 1313 649 1375 683
+rect 1409 649 1471 683
+rect 1505 649 1567 683
+rect 1601 649 1663 683
+rect 1697 649 1759 683
+rect 1793 649 1855 683
+rect 1889 649 1951 683
+rect 1985 649 2016 683
+rect 0 618 2016 649
+rect 355 598 413 618
+rect 355 564 367 598
+rect 401 564 413 598
+rect 355 552 413 564
+rect 547 566 605 578
+rect 547 532 559 566
+rect 593 563 605 566
+rect 593 535 1742 563
+rect 593 532 605 535
+rect 547 520 605 532
+rect 115 485 173 497
+rect 115 451 127 485
+rect 161 482 173 485
+rect 835 485 893 497
+rect 835 482 847 485
+rect 161 454 847 482
+rect 161 451 173 454
+rect 115 439 173 451
+rect 835 451 847 454
+rect 881 482 893 485
+rect 881 454 1262 482
+rect 881 451 893 454
+rect 835 439 893 451
+rect 130 146 158 439
+rect 259 402 317 414
+rect 259 368 271 402
+rect 305 399 317 402
+rect 1123 402 1181 414
+rect 1123 399 1135 402
+rect 305 371 1135 399
+rect 305 368 317 371
+rect 259 356 317 368
+rect 274 227 302 356
+rect 547 323 605 335
+rect 547 289 559 323
+rect 593 289 605 323
+rect 547 277 605 289
+rect 562 227 590 277
+rect 850 227 878 371
+rect 1123 368 1135 371
+rect 1169 368 1181 402
+rect 1123 356 1181 368
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 181 317 215
+rect 259 169 317 181
+rect 547 215 605 227
+rect 547 181 559 215
+rect 593 181 605 215
+rect 547 169 605 181
+rect 835 215 893 227
+rect 835 181 847 215
+rect 881 181 893 215
+rect 835 169 893 181
+rect 1123 215 1181 227
+rect 1123 181 1135 215
+rect 1169 212 1181 215
+rect 1234 212 1262 454
+rect 1714 414 1742 535
+rect 1795 485 1853 497
+rect 1795 451 1807 485
+rect 1841 451 1853 485
+rect 1795 439 1853 451
+rect 1411 402 1469 414
+rect 1411 368 1423 402
+rect 1457 368 1469 402
+rect 1411 356 1469 368
+rect 1699 402 1757 414
+rect 1699 368 1711 402
+rect 1745 368 1757 402
+rect 1699 356 1757 368
+rect 1426 227 1454 356
+rect 1169 184 1262 212
+rect 1411 215 1469 227
+rect 1169 181 1181 184
+rect 1123 169 1181 181
+rect 1411 181 1423 215
+rect 1457 212 1469 215
+rect 1810 212 1838 439
+rect 1457 184 1838 212
+rect 1457 181 1469 184
+rect 1411 169 1469 181
+rect 1810 146 1838 184
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 931 134 989 146
+rect 115 88 173 100
+rect 355 102 413 114
+rect 355 68 367 102
+rect 401 68 413 102
+rect 931 100 943 134
+rect 977 100 989 134
+rect 1795 134 1853 146
+rect 931 88 989 100
+rect 1507 102 1565 114
+rect 355 48 413 68
+rect 1507 68 1519 102
+rect 1553 68 1565 102
+rect 1795 100 1807 134
+rect 1841 100 1853 134
+rect 1795 88 1853 100
+rect 1507 48 1565 68
+rect 0 17 2016 48
+rect 0 -17 31 17
+rect 65 -17 127 17
+rect 161 -17 223 17
+rect 257 -17 319 17
+rect 353 -17 415 17
+rect 449 -17 511 17
+rect 545 -17 607 17
+rect 641 -17 703 17
+rect 737 -17 799 17
+rect 833 -17 895 17
+rect 929 -17 991 17
+rect 1025 -17 1087 17
+rect 1121 -17 1183 17
+rect 1217 -17 1279 17
+rect 1313 -17 1375 17
+rect 1409 -17 1471 17
+rect 1505 -17 1567 17
+rect 1601 -17 1663 17
+rect 1697 -17 1759 17
+rect 1793 -17 1855 17
+rect 1889 -17 1951 17
+rect 1985 -17 2016 17
+rect 0 -48 2016 -17
+<< labels >>
+rlabel locali 0 618 2016 714 0 VDD
+port 1 se
+rlabel metal1 0 618 2016 714 0 VDD
+port 2 se
+rlabel locali 0 -17 2016 17 0 GND
+port 3 se
+rlabel metal1 0 -48 2016 48 0 GND
+port 4 se
+rlabel metal1 931 88 989 146 0 Y
+port 5 se
+rlabel metal1 259 169 317 227 0 A
+port 6 se
+rlabel metal1 835 169 893 227 0 A
+port 7 se
+rlabel metal1 274 227 302 356 0 A
+port 8 se
+rlabel metal1 259 356 317 371 0 A
+port 9 se
+rlabel metal1 850 227 878 371 0 A
+port 10 se
+rlabel metal1 1123 356 1181 371 0 A
+port 11 se
+rlabel metal1 259 371 1181 399 0 A
+port 12 se
+rlabel metal1 259 399 317 414 0 A
+port 13 se
+rlabel metal1 1123 399 1181 414 0 A
+port 14 se
+rlabel metal1 547 169 605 227 0 B
+port 15 se
+rlabel metal1 562 227 590 277 0 B
+port 16 se
+rlabel metal1 547 277 605 335 0 B
+port 17 se
+<< properties >>
+string FIXED_BBOX 0 0 2016 666
+<< end >>
diff --git a/cells/mag/fixup.pl b/cells/mag/fixup.pl
index 0fad9ce..d67bf39 100755
--- a/cells/mag/fixup.pl
+++ b/cells/mag/fixup.pl
@@ -1,23 +1,63 @@
 #!/usr/bin/perl -w
 use strict;
 
-
 foreach my $mag (<*.mag>)
 {
   my $name=$mag; $name=~s/\.mag$//;
   system "cp $mag $mag.beforemagic";
 
-  open MAGIC,"|magic -dnull -noconsole -T sky130A $mag";
-print MAGIC <<EOF
-box -10 683 5210 778
+  my $width=150;
+  my $min=100;
+  my $max=200;
+
+  open IN,"<$mag";
+  while(<IN>)
+  {
+    if(m/string FIXED_BBOX 0 0 (\d+) (\d+)/)
+    {
+      $width=$1; $min=$1-31; $max=$min+31;
+      print "min: $min max: $max\nmagic $mag\nbox $min 17 $max 649\n";
+    }
+  }
+
+my $cmd=<<EOF
+snap internal
+
+box 0 683 10000 778
 erase locali
-box -49 -114 5210 -17
+
+box 0 -114 10000 -17
 erase locali
+
+box 0 17 31 649
+erase locali
+
+box $min 17 $max 649
+erase locali
+
+box 0 -17 $width 17
+label GND se locali
+port make
+box 31 17 $min 48
+label GND se locali
+port make
+
+box 0 649 $width 683
+label VDD se locali
+port make
+box 31 618 $min 649
+label VDD se locali
+port make
+
 save
 gds
 quit
 EOF
 ;
+  #print $cmd;
+  open MAGIC,"|magic -dnull -noconsole -T sky130A $mag";
+  print MAGIC $cmd;
   close MAGIC;
   system "mv $name.gds ../gds/$name.gds";
 }
+
diff --git a/cells/sp/XOR2X1.sp b/cells/sp/XOR2X1.sp
new file mode 100644
index 0000000..b33f108
--- /dev/null
+++ b/cells/sp/XOR2X1.sp
@@ -0,0 +1,17 @@
+*** Spice netlist generated by cell2spice.pl from cell file XOR2X1.cell ***
+
+.subckt XOR2X1 vdd gnd B A Y
+M0 1 A vdd vdd pmos w=0.840u l=0.150u
+M1 3 2 vdd vdd pmos w=0.840u l=0.150u
+M2 Y A 3 vdd pmos w=0.840u l=0.150u
+M3 4 1 Y vdd pmos w=0.840u l=0.150u
+M4 4 B vdd vdd pmos w=0.840u l=0.150u
+M5 2 B vdd vdd pmos w=0.840u l=0.150u
+M6 1 A gnd gnd nmos w=0.420u l=0.150u
+M7 5 2 gnd gnd nmos w=0.420u l=0.150u
+M8 Y 1 5 gnd nmos w=0.420u l=0.150u
+M9 6 A Y gnd nmos w=0.420u l=0.150u
+M10 6 B gnd gnd nmos w=0.420u l=0.150u
+M11 2 B gnd gnd nmos w=0.420u l=0.150u
+.ends XOR2X1
+
diff --git a/openlane/user_proj_example/macro_placement.cfg b/openlane/user_proj_example/macro_placement.cfg
index 3bf1e9a..03835ba 100644
--- a/openlane/user_proj_example/macro_placement.cfg
+++ b/openlane/user_proj_example/macro_placement.cfg
@@ -16,3 +16,4 @@
 OR2X1 38.4 123.21 N
 OR2X2 38.4 129.87 N
 XNOR2X1 38.4 136.53 N
+XOR2X1 38.4 143.19 N
diff --git a/verilog/rtl/user_proj_cells.v b/verilog/rtl/user_proj_cells.v
index 54af4c7..72b2dc1 100644
--- a/verilog/rtl/user_proj_cells.v
+++ b/verilog/rtl/user_proj_cells.v
@@ -202,3 +202,14 @@
 );
 endmodule
 
+module XOR2X1(
+  inout A, // input
+  inout B, // input
+  inout Y, // output
+     `ifdef USE_POWER_PINS
+	inout vdd, // cell power supply
+	inout gnd  // cell ground supply
+     `endif
+);
+endmodule
+
diff --git a/verilog/rtl/user_proj_example.v b/verilog/rtl/user_proj_example.v
index 12d9d6d..86df095 100644
--- a/verilog/rtl/user_proj_example.v
+++ b/verilog/rtl/user_proj_example.v
@@ -203,6 +203,15 @@
   .B(la_data_in[11]),
   .Y(la_data_out[12]),
 );
+XOR2X1 XOR2X1(
+ `ifdef USE_POWER_PINS
+  .vdd(vccd1),
+  .gnd(vssd1),
+ `endif
+  .A(la_data_in[13]),
+  .B(la_data_in[14]),
+  .Y(la_data_out[15]),
+);
 assign io_oeb[0] = 1'b1;
 assign io_oeb[1] = 1'b1;
 assign io_oeb[2] = 1'b0;